Fieldset¶
Fieldset
¶
djadmin.layout.Fieldset
Grouping of fields with optional legend (heading).
Part of core djadmin. Renders as HTML
Method Resolution Order
djadmin.layout.Fieldset
Attributes
| Attribute | Value | Defined in |
|---|---|---|
__annotations__ |
{'legend': str | None, 'fields': <class 'tuple'>, 'descri... |
djadmin.layout.Fieldset
|
__dataclass_fields__ |
{'legend': Field(name='legend',type=str | None,default=<d... |
djadmin.layout.Fieldset
|
__dataclass_params__ |
_DataclassParams(init=True,repr=True,eq=True,order=False,... |
djadmin.layout.Fieldset
|
__hash__ |
None |
djadmin.layout.Fieldset
|
__match_args__ |
('legend', 'fields', 'description', 'css_classes') |
djadmin.layout.Fieldset
|
description |
None |
djadmin.layout.Fieldset
|
Methods
__eq__(self, other)
Defined in:
<class 'djadmin.layout.Fieldset'>
Return self==value.
__init__(self, legend: str | None, *fields, description: str | None = None, css_classes: list[str] | None = None)
Defined in:
<class 'djadmin.layout.Fieldset'>
Initialize self. See help(type(self)) for accurate signature.
Source code
in layout.py
line 438
def __init__(
self,
legend: str | None,
*fields,
description: str | None = None,
css_classes: list[str] | None = None,
):
self.legend = legend
self.fields = fields
self.description = description
self.css_classes = css_classes or []
if not fields:
raise ValueError('Fieldset must contain at least one field')
__repr__(self)
Defined in:
<class 'djadmin.layout.Fieldset'>
Multi-line string representation for readability.
Source code
in layout.py
line 482
def __repr__(self):
"""Multi-line string representation for readability."""
# Format fields with indentation
fields_repr = ',\n '.join(repr(f) for f in self.fields)
parts = [repr(self.legend), f'\n {fields_repr}']
if self.description:
parts.append(f'description={self.description!r}')
if self.css_classes:
parts.append(f'css_classes={self.css_classes!r}')
return f"Fieldset({', '.join(parts)}\n )"
render_for_display(self, obj) -> dict
Defined in:
<class 'djadmin.layout.Fieldset'>
Render fieldset for display.
Args: obj: Model instance to get field values from
Returns: Dict with fieldset display data: { 'type': 'fieldset', 'legend': str | None, 'description': str | None, 'items': list[dict], 'css_classes': list, }
Source code
in layout.py
line 453
def render_for_display(self, obj) -> dict:
"""
Render fieldset for display.
Args:
obj: Model instance to get field values from
Returns:
Dict with fieldset display data:
{
'type': 'fieldset',
'legend': str | None,
'description': str | None,
'items': list[dict],
'css_classes': list,
}
"""
items = []
for field_item in self.fields:
items.append(field_item.render_for_display(obj))
return {
'type': 'fieldset',
'legend': self.legend,
'description': self.description,
'items': items,
'css_classes': self.css_classes,
}
Fields
| Field | Type | Related To |
|---|---|---|
__dict__ |
getset_descriptor |
- |
__weakref__ |
getset_descriptor |
- |