Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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
Python 3.x 如何在django中通过contact.html模板发送电子邮件_Python 3.x_Django_Django Forms_Django Views_Django Templates - Fatal编程技术网

Python 3.x 如何在django中通过contact.html模板发送电子邮件

Python 3.x 如何在django中通过contact.html模板发送电子邮件,python-3.x,django,django-forms,django-views,django-templates,Python 3.x,Django,Django Forms,Django Views,Django Templates,这是我的contact.html代码 <div class="col-lg-8"> form class="form-area " id="myForm" action="{% url 'contact' %}" method="post" class="contact-form text-right">

这是我的contact.html代码

<div class="col-lg-8">
                            
form class="form-area " id="myForm" action="{% url 'contact' %}" method="post" class="contact-form text-right">

<div class="row">

{% csrf_token %}    
<div class="col-lg-6 form-group">

<input name="name" placeholder="Enter your name" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter your name'" class="common-input mb-20 form-control" required="" type="text">
                                    
<input name="email" placeholder="Enter email address" pattern="[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{1,63}$" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter email address'" class="common-input mb-20 form-control" required="" type="email">

<input name="subject" placeholder="Enter subject" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter subject'" class="common-input mb-20 form-control" required="" type="text">
</div>

<div class="col-lg-6 form-group">
<textarea class="common-textarea form-control" name="message" placeholder="Enter Messege" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter Messege'" required=""></textarea>   
</div>
这是我的settings.py文件

EMAIL_HOST = 'localhost'
EMAIL_HOST = '1025'
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_USE_TLS = False
看来我在contact.html中的操作按钮没有任何作用 (注意:我的本地主机1025正在工作)

我怎样才能解决这个问题请帮忙


谢谢。

要发送邮件,您必须使用django邮件包。您可以按照以下代码进行操作:

from django.core.mail import EmailMultiAlternatives
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from django.template.loader import get_template

def send_email_smtp(from_email, recipient_list, subject, body):
    msg = EmailMultiAlternatives(subject, body, from_email, recipient_list)
    msg.attach_alternative(body, "text/html")
    msg.send()
    return True, None

name = request.POST['name']
recipient_email = request.POST['email']
subject = request.POST['subject']
message = request.POST['message']

html_template = get_template('email_template.html')
html_content = html_template.render(
    {
        'message': message,
    })
send_email_smtp(settings.EMAIL_HOST_USER, [recipient_email],
                subject, body=html_content)
除此之外,您还必须为电子邮件正文创建一个名为“email_template.html”的模板。我提供了一个简单的代码片段

File name : email_template.html

{{message}}

Use还必须添加此属性设置。py:EMAIL\u HOST='smtp.gmail.com'EMAIL\u PORT=587 EMAIL\u HOST\u USER=''EMAIL\u HOST\u PASSWORD=''EMAIL\u Use\u TLS=TureBrother请发送电子邮件给我nishantkkr68@gmail.com这样我就可以向您发送total contact.html文件,并在查看该文件后告诉我应该如何解决我的问题问题。@NishantSagar您只能在此处提供该文件。@NishantSagar请查看更新后的答案,您可以通过Linkedin与我联系。这是我的个人资料。
File name : email_template.html