Mam poniższy formularz modelu i chcę dodać niestandardową weryfikację do pola o nazwie "billable_work".Sprawdzanie poprawności Django ModelForm: Jak uzyskać dostęp do przesłanych wartości pól
Jak uzyskać dostęp do pola "projekt", który został złożony w formularzu? Chcę sprawdzić wartość projektu ("p" w poniższym przykładzie), ale nie mogę zlokalizować właściwej składni, aby przetestować przesłaną wartość. Każda pomoc będzie doceniona.
class EntryForm(forms.ModelForm):
class Meta:
model = Entries
exclude = ('billable_work','notes')
billable_work = forms.BooleanField()
notes = forms.CharField(widget=forms.Textarea,required=False)
def clean_billable_work(self):
b = self.cleaned_data['billable_work']
p = form.fields['project']
if b == True and p == 523:
raise forms.ValidationError(_("Entries cannot be both billable and NONE: Indirect."))
return self.cleaned_data['billable_work']
Dzięki za link w dokumentach. Szukałem składni self.cleaned_data.get ("projekt"). Aby przetestować wartość, muszę ją przekonwertować na ciąg znaków. Czy jest to właściwa/prawidłowa metoda? – Mrak
Nie jestem pewien, czy podążam? –