Две формы в Django - как сделать форму отправляемой без заполнения всех полей? - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть две формы в одном представлении. Я хочу иметь возможность отправить одну форму без заполнения другой. Я выяснил, как обрабатывать формы отдельно, выполняя разные действия для каждой формы, но я использую django ModelForms, и перед отправкой любой формы необходимо заполнить все поля.

Я попытался сделать поля необязательными, но они не работают для моего использования, мне нужно заполнить все поля в каждой форме, чтобы их можно было отправить.

Вот мой HTML:

      <form method="post" action="successfulpost" class="form-inline">
        {% csrf_token %}
        {{applicantform}}
        <input type="submit" class="btn btn-primary" value="View full posting"></input> 
      </div>

И мой код формы:

class ApplicantForm(forms.ModelForm):

    first_name = forms.CharField(widget=forms.TextInput(
        attrs={'class': 'form-control', 'placeholder': 'First name'}), label='')
    last_name = forms.CharField(widget=forms.TextInput(
        attrs={'class': 'form-control', 'placeholder': 'Last name'}), label='')
    referrer = forms.ModelChoiceField(queryset=Referral.objects.all())

    class Meta:
        model = Applicant
        fields = ('first_name', 'last_name', 'referrer')

Возможно ли это сделать - возможно, невозможно с ModelForms?

1 Ответ

1 голос
/ 11 апреля 2019

Отображение обеих форм в отдельных <form> </form> может решить вашу проблему как

<form method="post" action="successfulpost" class="form-inline">
        {% csrf_token %}
        {{first_form}}
        <input type="submit" class="btn btn-primary" value="View full posting"></input> 
      </div>

и

<form method="post" action="successfulpost" class="form-inline">
        {% csrf_token %}
        {{second_form}}
        <input type="submit" class="btn btn-primary" value="View full posting"></input> 
      </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...