电子邮件被输出到我们的命令行控制台,它们实际上并没有被发送给用户。本章我们使用126邮箱发送邮件.
发送邮件配置
首先,在config/settings.py文件中更新电子邮件后端以使用SMTP。
config/settings.py
# config/settings.py
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.126.com'
EMAIL_PORT = 25
# 发送邮件的邮箱
EMAIL_HOST_USER = 'xurongzhong@126.com'
# 在邮箱中设置的客户端授权密码
EMAIL_HOST_PASSWORD = '***'
# 收件人看到的发件人
EMAIL_FROM = EMAIL_HOST_USER
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
# 设置是否启用安全链接
EMAIL_USER_TLS = True
EMAIL_USER_TLS = False
打开http://127.0.0.1:8000/accounts/password_reset/
查看邮件
自定义电子邮件
自定义邮件内容:templates/registration/password_reset_email.html
{% load i18n %}{% autoescape off %}
{% blocktranslate %}You're receiving this email because you requested a password reset for your user account at {{ site_name }}.{% endblocktranslate %}
{% translate "请到以下页面选择新密码:" %}
{% block reset_link %}
{{ protocol }}://{{ domain }}{% url 'password_reset_confirm' uidb64=uid token=token %}
{% endblock %}
{% translate 'Your username, in case you’ve forgotten:' %} {{ user.get_username }}
{% translate "Thanks for using our site!" %}
{% blocktranslate %}The {{ site_name }} team{% endblocktranslate %}
{% endautoescape %}
自定义邮件标题:templates/registration/password_reset_subject.txt
$ vi password_reset_subject.txt
请重置您的密码
另外如下组合也比较常用,不过国内貌似经常不能正常方位sendgrid的API。
小结
我们现在已经完成了完整的用户认证流程的实施。用户可以注册新的帐户,登录,注销,改变他们的密码,并重置他们的密码。下章是时候建立我们实际的报纸应用程序了。
网友评论