私は簡単な形をしています:
class SubmissionQuickReplyForm(forms.Form):
comment_text = forms.CharField(label='', required=False, widget=forms.Textarea(attrs={'rows':2}))
form.ChoiceFieldをフォームに追加したいのですが、ChoiceFieldのオプションはクエリセットから入力されます。
class SubmissionQuickReplyForm(forms.Form):
comment_text = forms.CharField(label='', required=False, widget=forms.Textarea(attrs={'rows':2}))
choice = forms.ChoiceField(...)
たとえば、私が持っている場合:
q = MyChoices.Objects.all()
ビューでフォームの結果を処理しているときにオブジェクトを最後に戻すことができるように、ChoiceFieldにqの内容を入力するにはどうすればよいですか?
if request.method == "POST":
form = SubmissionQuickReplyForm(request.POST)
if form.is_valid():
ch = get_object_or_404(MyChoices, pk=?)
# How do I get my object from the choice form field?
代わりにModelChoiceFieldを使用できます。
choice = forms.ModelChoiceField(queryset=MyChoices.objects.all())
そして、あなたは単にcleaned_data
このように電話することによって得ることができます。
if request.method == "POST":
form = SubmissionQuickReplyForm(request.POST)
if form.is_valid():
ch = form.cleaned_data.get('choice')
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加