大家好! 我想在一個模板來顯示對窗體Django:模板中的兩個FormView
我的形式是:
class ContactForm(forms.Form):
contact_name = forms.CharField(
required=True)
contact_email = forms.EmailField(
required=True)
contact_phone = forms.CharField(
required=True)
subject = forms.CharField(
required=True)
message = forms.CharField(
required=True,
widget=forms.Textarea)
class CVCreateForm(forms.ModelForm):
class Meta:
model = CV
fields = '__all__'
而且我有兩個FormViews:
class ContactView(FormView):
form_class = ContactForm
succes_url = reverse_lazy('webpage:home')
def form_valid(self, form):
context = super(ContactView, self).form_valid(form)
contact_email = form.cleaned_data['contact_email']
subject = form.cleaned_data['subject']
message = 'Name: {}\nPhone:{}\n{}'.format(form.cleaned_data['contact_name'], form.cleaned_data['contact_phone'], form.cleaned_data['message'],)
send_mail(subject,
message,
contact_email,
['[email protected]'])
return context
class CVCreateView(FormView):
form_class = CVCreateForm
succes_url = reverse_lazy('webpage:home')
def form_valid(self):
context = super(CVCreateView, self).form_valid(form)
form_owner = form.cleaned_data['owner']
form_cv = form.cleaned_data['cv']
form_email = form.cleaned_data['email']
send_mail('Curriculum Vitae',
form_cv,
form_email,
['[email protected]'])
cv = CV(owner=form_owner, email=form_email, cv=form_cv)
cv.save()
return context
(注:在第二種形式的 'form_cv' 是會是一個PDF文件我認爲這不是一個問題發送電子郵件,但我不知道很好。) 我想在TemplateView中顯示這兩個FormView
謝謝:)
爲了讓您知道,您在視圖中的代碼中留下了類似於您的電子郵件的內容。打電話給我偏執狂,但因爲這是一個公共職位,我通常更喜歡把它改變爲更像''myemail @ gmail.com'''的東西:) – tdsymonds