フォームの値とそのラベルを取得する関数を作成して、次のようにメール本文に含めることができるようにしようとしています。
<p><strong>Labelvalue</strong>: formvalue</p>
それは可能ですか?
「body = smart_unicode(form.cleaned_data)」を実行すると、口述が得られますが、必要なようにhtmlを取得するために何ができるかわかりません。
フォーム.py
class MyForm(forms.Form):
TYPE_CHOICES = (
(ADULT, 'Adult'),
(CHILD, 'Child'),
)
type = forms.ChoiceField(widget=RadioSelect, choices=TYPE_CHOICES, label='Adult or child')
name = forms.CharField(label='Name')
birthdate = forms.DateField(widget=SelectDateWidget(years=range(2012,1900,-1)), label='Birthdate')
address = forms.CharField(label='Address')
email = forms.EmailField(label='Email')
Views.py
def show_myform(request):
if request.method == 'POST':
form = MyForm(request.POST)
if form.is_valid():
subject = "Testsubject"
sender = form.cleaned_data['email']
recipients = ['post@mydomain.com']
body = smart_unicode(form.cleaned_data)
msg = EmailMessage(subject, body, sender, recipients)
msg.send()
return HttpResponseRedirect('/thanks/')
else:
form = MyForm()
return render(request, 'form/myform.html', {
'form': form,
})