django-rest-auth 重置密码电子邮件包含“example.com”域而不是 site_domain

Jus*_*ing 5 django django-templates django-rest-auth

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

电子邮件:

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


...

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

...
Run Code Online (Sandbox Code Playgroud)

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

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

{{ protocol }}://{{ domain }}{% url 'password_reset_confirm' uidb64=uid token=token %}
Run Code Online (Sandbox Code Playgroud)
  • 有没有一种方法可以在不进行硬编码的情况下传递项目域?
  • 如何将发件人的电子邮件地址更改为自定义地址?

Sel*_*cuk 2

注册使用django-allauth反过来使用该sites框架来填充电子邮件。您应该浏览到管理站点并修改默认值(带有ofsite的站点)。id1

请参阅安装后步骤django-allauth

Site为您的域添加一个匹配的settings.SITE_IDdjango.contrib.sites应用程序)。