1
나는 해당 formset 및 각 양식은 초기 값에 제출 한이 포함되어 있습니다장고 - 해당 formset : ingore 형태 contaning 만 초기 값
class IssueForm(forms.Form):
date_of_issue = forms.DateField(
initial=date.today().strftime("%d.%m.%Y"),
widget=forms.TextInput(attrs={
'placeholder': date.today().strftime("%d.%m.%Y"),
'class': 'form-control',
}),
localize=True,
required=True)
이제 사용자가 표시 10 개 여분의 형태를 얻을 수 있지만, 어쩌면 그/그녀는 단지 5 채 웁니다 그들의. 이제 date_of_issue 필드가 필요하므로 formSet을 제출 한 후 다시 표시되고 사용자가 채워지지 않은 5 행을 표시합니다.
나는 필드에 대해 내 자신의 청소 기능을 추가하려고하지만,이 길을 가야하는 것입니다 모르겠어요 :def clean_date_of_issue(self):
if len(self.cleaned_data) == 1 and 'date_of_issue' in self.cleaned_data:
self.cleaned_data = dict()
return None
return self.cleaned_data['date_of_issue']
현재 사용중인 정리 기능의 결과는 어떻게됩니까? 그게 뭐가 잘못 됐어? –
@ HåkenLid 폼이 다시 표시되고 하나의 채워진 필드 (초기 값이있는 date_of_issue)가있는 폼은 "채워야 함"으로 표시됩니다 (폼의 다른 필드가 필요함). 나는 깨끗한 기능이 갈 길인지 모른다. – Fabian
나는 본다. 난 당신이 장고 양식 프레임 워크의 편의를 많이 잃는 것을 발견하면 사소한 오버라이드 방법과 기능을 시작합니다. 이 경우 placeholder를 삭제하거나 클라이언트 측 솔루션을 찾으십시오. 자바 스크립트 "오늘"버튼을 눌러 날짜를 기입하십시오. 또는 제출시 formets의 유효성을 미리 확인하고 'date_of_issue'만 채워진 하위 양식을 필터링하는 javascript 함수. –