我有一个表格,其中所有字段都有效。我现在想要发送电子邮件,如果表单有效,但如果发送电子邮件失败,我想为用户生成错误消息。这样做的正确方法是什么? 我是否应该将用户重定向到包含错误的新页面,或者将表单重新呈现为无效。
from myapp.forms import ContactForm
from django.views.generic.edit import FormView
class ContactView(FormView):
template_name = 'contact.html'
form_class = ContactForm
success_url = '/thanks/'
def form_valid(self, form):
# This method is called when valid form data has been POSTed.
# It should return an HttpResponse.
form.send_email()
return super(ContactView, self).form_valid(form)
在此示例中,如果form.send_emai()
返回错误消息,那么将该消息返回给用户的最佳方法是什么?如果用户之前已发送过相同的电子邮件,或者收件人已选择不接收电子邮件,则我的send_email()
函数会返回错误。我想将这些消息转发给用户。
答案 0 :(得分:0)
您可以将支票添加到表单的clean()
方法吗?这样,您就不必担心从form.send_email()
返回错误消息。