pl:python:meta
Spis treści
Meta ogólnie
Opcje Meta w formularzach i modelach Django mają pewne podobieństwa, ale nie są identyczne. Oto kilka wspólnych opcji, ale także kilka różnic:
Wspólne opcje dla formularzy i modeli
model
- Wskazuje na model, z którego formularz lub model ma być utworzony.
class MyModelForm(forms.ModelForm): class Meta: model = MyModel
fields
- Określa listę pól, które powinny być uwzględnione w formularzu lub modelu.
class MyModelForm(forms.ModelForm): class Meta: model = MyModel fields = ['field1', 'field2']
Opcje specyficzne dla modeli:
exclude
- Lista pól modelu, które mają zostać pominięte podczas tworzenia formularza.
class MyModelForm(forms.ModelForm): class Meta: model = MyModel exclude = ['field_to_exclude']
widgets
- Słownik definiujący, jakie widgety mają być używane dla konkretnych pól modelu.
class MyModelForm(forms.ModelForm): class Meta: model = MyModel widgets = { 'field1': forms.TextInput(attrs={'class': 'custom-class'}), 'field2': forms.Textarea(attrs={'rows': 3}), }
Opcje specyficzne dla formularzy
labels
- Słownik definiujący niestandardowe etykiety dla pól formularza.
class MyForm(forms.Form): class Meta: labels = { 'field1': 'Custom Label 1', 'field2': 'Custom Label 2', }
help_texts
- Słownik definiujący niestandardowe teksty pomocy dla pól formularza.
class MyForm(forms.Form): class Meta: help_texts = { 'field1': 'Custom help text for Field 1', 'field2': 'Custom help text for Field 2', }
error_messages
- Słownik definiujący niestandardowe komunikaty o błędach dla pól formularza.
class MyForm(forms.Form): class Meta: error_messages = { 'field1': {'required': 'This field is required.'}, 'field2': {'invalid': 'Invalid value for Field 2'}, }
Podsumowując, choć istnieje pewne podobieństwo w używaniu opcji Meta w formularzach i modelach, to jednak obiekt Meta dostosowuje się do specyfiki zastosowania. Dokumentacja Django zawiera pełen zestaw dostępnych opcji w kontekście formularzy: Django - Form and field options, a w kontekście modeli: Django - Meta options.
pl/python/meta.txt · ostatnio zmienione: przez sindap
