Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Django从表单POST数据发送电子邮件_Django_Forms_Email - Fatal编程技术网

使用Django从表单POST数据发送电子邮件

使用Django从表单POST数据发送电子邮件,django,forms,email,Django,Forms,Email,所以我已经为一个表单编写了HTML代码,我想使用Django发送电子邮件。据我所见,Django电子邮件与Django自己的表单模块一起使用,以便发送包含数据的电子邮件。我想知道是否有可能保留我当前的HTML表单并访问其POST数据以与Django的电子邮件功能一起使用?您不需要使用Django表单对象(如ContactForm):您的表单的POST数据可以通过视图的request参数访问 此示例取自文档(): 它又快又脏,但很好用 然而,看起来您仍然在django内部处理表单。在继续之前,你可

所以我已经为一个表单编写了HTML代码,我想使用Django发送电子邮件。据我所见,Django电子邮件与Django自己的表单模块一起使用,以便发送包含数据的电子邮件。我想知道是否有可能保留我当前的HTML表单并访问其POST数据以与Django的电子邮件功能一起使用?

您不需要使用Django表单对象(如ContactForm):您的表单的POST数据可以通过视图的
request
参数访问

此示例取自文档():

它又快又脏,但很好用

然而,看起来您仍然在django内部处理表单。在继续之前,你可能想先解决这个问题


祝你好运。

不太清楚你在问什么。您可以在视图中使用任何表单,然后从中发送数据。您的确切问题是什么?我正在尝试使用Django的send_mail函数,但我不知道如何从HTML表单中访问数据,以便在该函数的message参数中使用。我查找的所有其他内容都使用Django自己的表单类来完成。
from django.core.mail import send_mail, BadHeaderError

def send_email(request):
    subject = request.POST.get('subject', '')
    message = request.POST.get('message', '')
    from_email = request.POST.get('from_email', '')
    if subject and message and from_email:
        try:
            send_mail(subject, message, from_email, ['admin@example.com'])
        except BadHeaderError:
            return HttpResponse('Invalid header found.')
        return HttpResponseRedirect('/contact/thanks/')

    else:
        # In reality we'd use a form class
        # to get proper validation errors.
        return HttpResponse('Make sure all fields are entered and valid.')