django5-forms-fieldset
Django form fieldset inspire django admin fieldset (fork of original reposity by hadpro24 to support Django 5.1 and newer releases)
Installation
pip install django5-forms-fieldset
Usage
settings
Add forms_fieldset to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [
...
'forms_fieldset',
]
load template
{% load forms_fieldset static %}
<link rel="stylesheet" type="text/css" href="{% static 'forms_fieldset/css/main.css' %}">
<form>
{{ form|fieldset:'#42945c' }}
</form>
Note : The fieldset filter receives the color of the titles of the form groups, by default this color is used: # 79AEC8)
Complete Guide
models
from django.db import models
# Create your models here.
class Student(models.Model):
first_name = models.CharField(max_length=200, verbose_name="First Name")
last_name = models.CharField(max_length=200, verbose_name="Last Name")
email = models.EmailField(unique=True, verbose_name="Email")
adress = models.CharField(max_length=200, verbose_name="Adress")
mother_name = models.CharField(max_length=200, verbose_name="Mother Name")
father_name = models.CharField(max_length=200, verbose_name="Father Name")
class Note(models.Model):
SUBJECTS = (
('Math', 'Math'),
('French', 'French'),
('Physical', 'Physical'),
)
student = models.ForeignKey('Student', on_delete=models.CASCADE, related_name="notes")
subject = models.CharField(max_length=200, choices=SUBJECTS, verbose_name="Subject")
value = models.IntegerField(verbose_name="Notation")
class Meta:
verbose_name = "Les notes"
verbose_name_plural = "Les notes"
forms
from django.forms import ModelForm
from .models import Student
class StudentForm(ModelForm):
fieldsets = [
("Student Information", {'fields': [
('first_name', 'last_name'),
('email', 'adress'),
]}),
("Parent Information", {'fields': [
'mother_name',
'father_name',
]}),
]
class Meta:
model = Student
fields = '__all__'
views
from django.shortcuts import render
from django.forms import inlineformset_factory
from .forms import StudentForm
from .models import Student, Note
# Create your views here.
def home(request):
form = StudentForm()
InlineForm = inlineformset_factory(Student, Note,
fields=('subject', 'value',), exclude=('pk',), can_delete=False,
)
if request.method == 'POST':
form = Form(request.POST, request.FILES)
formset = InlineForm(request.POST, request.FILES)
#save...
context = {
'form': form,
'inline_form': InlineForm()
}
return render(request, 'home.html', context)
template
{% load forms_fieldset static %}
<!DOCTYPE html>
<html>
<head>
<title>Home page</title>
<link rel="stylesheet" type="text/css" href="{% static 'forms_fieldset/css/main.css' %}">
</head>
<body style="width: 75%; margin: 50px auto">
<h1>Student form information</h1>
<form>
{{ form|fieldset:'#42945c' }}
{{ form_inline|inline_fieldset:"#42945c,Note des eleves" }}
</form>
</body>
</html>
enjoy
Release
- version 1.0.0
fix for Django 5.1 and newer
Credit
NCI IT Team Jake Morgan Jochen Winzer
Orginal Contributor: -Harouna Diallo
Metadata
Release files for django5-forms-fieldset 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django5_forms_fieldset-1.0.0.tar.gz | 281.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django5_forms_fieldset-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 568.9 kB
Release files / django5_forms_fieldset-1.0.0.tar.gz
| Download URL | django5_forms_fieldset-1.0.0.tar.gz |
|---|---|
| Size | 281.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4a189e2a97dbce4f547d818cff8c555764197ac1ff3f4862cef519018d1f94f9
|
|
BLAKE2b-256 checksum How to use checksums |
8611b62bdef074802e3fb8566afbec4a934af446ab318148e7611727c86f9cec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / django5_forms_fieldset-1.0.0-py3-none-any.whl
| Download URL | django5_forms_fieldset-1.0.0-py3-none-any.whl |
|---|---|
| Size | 287.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e9b1e7576e8a49c3b5f085406bb5b52e35331fc34b641f3afca4173062ee03f5
|
|
BLAKE2b-256 checksum How to use checksums |
b090f084d437976dd3e7ca4e4e4e10e02c6b697928bc3688ca3554e6bbd7be97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|