django 如何为Djoser电子邮件使用不同的域?

gywdnpxw  于 2023-07-01  发布在  Go
关注(0)|答案(2)|浏览(91)

如何更改djoser发送的电子邮件中的链接所使用的域?

elcex8rz

elcex8rz1#

我发现了这一点,要更改链接域,您需要将DOMAIN和SITE_NAME添加到项目设置中。示例:

DOMAIN = config('DOMAIN') #example.com
SITE_NAME = config('SITE_NAME') #Example

 DJOSER = {
    'LOGIN_FIELD':'email',
    'USER_CREATE_PASSWORD_RETYPE':True,
    'ACTIVATION_URL': '/users/activate/{uid}/{token}',
    'SEND_ACTIVATION_EMAIL': True,
    'SERIALIZERS':{
        'user_create':'userauth.serializers.UserCreateSerializer',
        'user':'userauth.serializers.UserCreateSerializer',
        'activation': 'djoser.email.ActivationEmail',
}

然后你应该在你的电子邮件中得到下一个链接:

http://example.com/auth/users/activate/MQ/5c9-26bcab9e85e8a967731d
rqcrx0a6

rqcrx0a62#

邮件模板中的{{ protocol }}变量来自templated_mail库,

protocol = context.get('protocol') or (
    'https' if self.request.is_secure() else 'http'
)

因此,在生产服务器上使用https请求的协议将是https

相关问题