4

django-rest-auth在我的项目中使用并想自定义重置密码时使用的电子邮件模板。如果我使用用户电子邮件发送 POST 请求,/rest-auth/password/reset/则该请求有效,但我收到的电子邮件是:

电子邮件:

from **webmaster@localhost** via ...


...

http://**example.com**/reset/ZGJjNjU2MjAtZjdjNy00MDdjLTkyZDctZDAwZGM2M2IzMmU4/4ys-09e6403c9784bea04986/

...

基本上我希望域example是项目的域,并且发件人电子邮件是自定义电子邮件。

我看到我可以创建一个/templates/registration/password_reset_email.html文件并在那里进行更改。我需要更改的行是:

{{ protocol }}://{{ domain }}{% url 'password_reset_confirm' uidb64=uid token=token %}
  • 有没有办法在不进行硬编码的情况下通过项目域?
  • 如何将发件人的电子邮件地址更改为自定义的?
4

1 回答 1

2

注册用途django-allauth,而后者又使用sites框架来填充电子邮件。您应该浏览到管理站点并修改您的默认值site(带有idof的那个1)。

请参阅安装后步骤django-allauth

为您的域添加一个Site,匹配settings.SITE_ID( django.contrib.sitesapp)。

于 2018-08-16T23:57:03.123 回答