Django Rest验证自定义重置密码确认url

Django Rest验证自定义重置密码确认url,django,django-rest-auth,reset-password,Django,Django Rest Auth,Reset Password,使用django rest framework,当您发布重置密码(rest auth/password/reset/)时,会向用户发送一封电子邮件。此电子邮件包含一个确认URL。我想更改此url,因为我正在使用REST应用程序,我希望此电子邮件指向我的前端,而不是django后端 对于确认电子邮件案例,我必须从AccountAdapter覆盖get\u email\u confirmation\u url方法。但是对于重置密码的情况,我不知道如何做(适配器中没有重置密码的方法) 有什么想法吗?我

使用django rest framework,当您发布重置密码(rest auth/password/reset/)时,会向用户发送一封电子邮件。此电子邮件包含一个确认URL。我想更改此url,因为我正在使用REST应用程序,我希望此电子邮件指向我的前端,而不是django后端

对于确认电子邮件案例,我必须从
AccountAdapter
覆盖
get\u email\u confirmation\u url
方法。但是对于重置密码的情况,我不知道如何做(适配器中没有重置密码的方法)


有什么想法吗?

我是用templatetags做的:

我的templatetags文件(例如
设置\u vars.py
):

My
settings.py中的My变量:

from django import template
from django.conf import settings

register = template.Library()

@register.simple_tag
def get_settings_var(name):
    return getattr(settings, name)
FRONTEND_URL = 'http://localhost:4200/'
ACCOUNT_EMAIL_CONFIRMATION_URL = FRONTEND_URL + 'verify-email/{}'
ACCOUNT_PASSWORD_RESET_CONFIRM = FRONTEND_URL + 'password-reset/confirm/'
my
password\u reset\u email.html中的用法:

{% load settings_vars %}

{% trans "Please go to the following page and choose a new password:" %}
{% block reset_link %}
{% get_settings_var 'ACCOUNT_PASSWORD_RESET_CONFIRM' %}?uidb64={{ uid }}&token={{ token }}
{% endblock %}
如果有人知道更好的解决方案,请随时发表评论

希望它能帮助别人。

查看这里的工作答案