Django попросите заполнить форму, которая не требуется

#html #django #django-views

Вопрос:

У меня странная ошибка с моими формами. На странице я должен передать 2 отдельные формы, у 1-й вообще нет проблем , и я могу добавить запись в БД, 2-я выдает мне ошибку с просьбой заполнить необходимые данные 1-й формы. Словарь СООБЩЕНИЙ выглядит нормально

Вот журнал:

 lt;QueryDict: {'csrfmiddlewaretoken': ['lvt5Ph2SA1xxFK4LMotdHOWk2JuZzYDo0OKWc77rKICYKYmemy3gl0dBphnRNcFb'], 'pk_atto': ['1.1'], 'pk_persona': ['1'], 'capacita': ['11'], 'Aggiungi_persona': ['persona'], 'tipo': ['fondo']}gt; lt;ul class="errorlist"gt;lt;ligt;pk_particellalt;ul class="errorlist"gt;lt;ligt;This field is required.lt;/ligt;lt;/ulgt;lt;/ligt;lt;/ulgt;  

взгляды:

 if request.method == 'POST':  if("Aggiungi_particella" in request.POST):  save_atto = AttiPartenzeParticelleForm(request.POST)  else:  save_atto = AttiPartenzePersoneForm(request.POST)  print(request.POST)  print(save_atto.errors)  if save_atto.is_valid():  save_atto.save()  return redirect('/aggiungi_atto_partenza'   '/'   str(save_atto['pk_atto'].value()))  

формы:

 class AttiPartenzeParticelleForm(ModelForm):  pk_atto = forms.ModelChoiceField(queryset=Atti.objects.all(),  widget=forms.Select  (attrs={'class': 'form-control'}))  pk_particella = forms.ModelChoiceField(queryset=Particelle.objects.all(),  widget=forms.Select  (attrs={'class': 'form-control'}))  capacita = forms.CharField(max_length=30,  widget=forms.NumberInput  (attrs={'class': 'form-control'}))  tipo = forms.CharField(max_length=30, initial="fondo", widget=forms.TextInput (attrs={'class': 'form-control'}))  class Meta:  model = Acquisizioni_Cessioni_particella  fields = '__all__'  class AttiPartenzePersoneForm(ModelForm):  pk_atto = forms.ModelChoiceField(queryset=Atti.objects.all(),  widget=forms.Select  (attrs={'class': 'form-control'}))  pk_persona = forms.ModelChoiceField(queryset=Persone.objects.all(),  widget=forms.Select  (attrs={'class': 'form-control'}))  capacita = forms.CharField(max_length=30,  widget=forms.NumberInput  (attrs={'class': 'form-control'}))  tipo = forms.CharField(max_length=30, initial="fondo", widget=forms.TextInput (attrs={'class': 'form-control'}))   class Meta:  model = Acquisizioni_Cessioni_particella  fields = '__all__'  

и HTML

 lt;div id="particella" class="content-section d-flex justify-content-center mt-5"gt;  lt;form action="" method="POST" id="particella_f"gt;  {% csrf_token %}  lt;fieldset class="form-group"gt;  lt;div style="visibility:hidden"gt;  {{ form.pk_atto|as_crispy_field }}  lt;/divgt;  lt;div class="row"gt;  lt;div class="col-8"gt;  {{ form.pk_particella|as_crispy_field }}  lt;/divgt;  lt;div class="col-2"gt;  {{ form.capacita|as_crispy_field }}  lt;/divgt;   lt;div class="col-4 d-flex justify-content-center"gt;  lt;button form="particella_f" class="btn btn-outline-primary btn-lg mt-5" type="submit" name="Aggiungi_particella" value="particella"gt;  AGGIUNGI PARTICELLA  lt;/buttongt;  lt;/divgt;  lt;div style="visibility:hidden"gt;  {{ form.tipo|as_crispy_field }}  lt;/divgt;  lt;/divgt;  lt;/fieldsetgt;  lt;/formgt; lt;/divgt;   lt;div id="persona" class="content-section d-flex justify-content-center mt-5"gt;  lt;form action="" method="POST" id="persona_f"gt;  {% csrf_token %}  lt;fieldset class="form-group"gt;  lt;div style="visibility:hidden"gt;  {{ persona.pk_atto|as_crispy_field }}  lt;/divgt;  lt;div class="row"gt;  lt;div class="col-8"gt;  {{ persona.pk_persona|as_crispy_field }}  lt;/divgt;  lt;div class="col-2"gt;  {{ persona.capacita|as_crispy_field }}  lt;/divgt;  lt;div class="col-4 d-flex justify-content-center"gt;   lt;button class="btn btn-outline-primary btn-lg mt-5" form="persona_f" type="submit" name="Aggiungi_persona" value="persona"gt;  AGGIUNGI PERSONA  lt;/buttongt;  lt;/divgt;  lt;div style="visibility:hidden"gt;  {{ form.tipo|as_crispy_field }}  lt;/divgt;  lt;/divgt;  lt;/fieldsetgt;  lt;/formgt; lt;/divgt;  

у кого-нибудь есть какие-нибудь идеи? тнх

Комментарии:

1. Обе формы указывают на модель Acquisizioni_Cessioni_particella. Является ли pk_particella обязательным полем в модели, а не во второй форме?

2. pk_particella присутствует только в модели Acquisizioni_Cessioni_particella

3. И обе формы ссылаются на эту модель. Таким образом, проблема в том, что вторая форма нуждается в этом поле.