私はPython 3.6でDjango 1.11を使用しています。 私はフォームを持っています。ラジオボタンがチェックされていない状態でフォームが送信されると、フォームは有効です。 しかし、ラジオボタンの「性別」をチェックしてフォームを送信すると、それが男性か女性かにかかわらず、フォームは妥当ではありません。Django - フォームの問題
問題が分かっていますか?
テンプレート:あなたの助けを
<form action="{% url 'games' %}" method="POST">
{% csrf_token %}
<p>{{ form.identifiant|add_class:"form-control"|attr:"placeholder:Quel sera votre identifiant unique ?"|attr:"name:identifiant" }}</p>
<p>{{ form.email|add_class:"form-control"|attr:"placeholder:Indiquez-y votre email !"|attr:"name:email" }}</p>
<p>{{ form.password|add_class:"form-control"|attr:"placeholder:Créer votre mot de passe ici."|attr:"name:password" }}</p>
<p>{{ form.confirm_password|add_class:"form-control"|attr:"placeholder:Retaper votre mot de passe."|attr:"name:confirm_password" }}</p>
<p>{{ form.sex|attr:"" }}</p>
<input class="btn btn-lg btn-primary" type="submit" value="Continuer">
</form>
def view_games(request):
if request.method == 'POST':
form = MinimumRegisterForm(request.POST)
if form.is_valid():
identifiant = form.cleaned_data['identifiant']
email = form.cleaned_data['email']
password = form.cleaned_data['password']
confirm_password = form.cleaned_data['confirm_password']
sex = form.cleaned_data['sex']
form = GamesRegisterForm()
return render(request, 'games.html', locals())
else:
messages.add_message(request, messages.INFO, 'Formulaire invalide')
return redirect(view_register)
else:
return redirect(view_register)
views.py
class MinimumRegisterForm(forms.Form):
identifiant = forms.CharField(
max_length=50,
)
email = forms.EmailField(
)
password = forms.CharField(
widget=forms.PasswordInput,
)
confirm_password = forms.CharField(
widget=forms.PasswordInput,
)
sex_choice = (
('H', 'Homme'),
('F', 'Femme'),
)
sex = forms.MultipleChoiceField(
widget=forms.RadioSelect(),
choices=sex_choice,
)
forms.py
感謝します。
必須=偽の設定を試しましたか? – sureshvv
@sureshvvはい私は偽を要求しましたが、問題は解決しませんでした。 – GrandGTO
@sureshvv 'forms.ChoiceField'を試してください –