Dj rest auth сброс пароля отправляет необработанный html в электронном письме

Я использую пакет dj rest auth и я переопределил письмо сброса пароля следующим образом

в settings.py :

REST_AUTH_SERIALIZERS = {
'JWT_TOKEN_CLAIMS_SERIALIZER': 'account.token.TokenObtainPairSerializer',
'USER_DETAILS_SERIALIZER': 'account_profile.api.userupdate.UserSerializer',
'PASSWORD_RESET_SERIALIZER': 'account_profile.api.customemail.CustomPasswordResetSerializer'}

и в customemail.py :

class CustomPasswordResetSerializer(PasswordResetSerializer):
def save(self):
    request = self.context.get('request')
    # Set some values to trigger the send_email method.
    opts = {
        'use_https': request.is_secure(),
        #'from_email': 'noreply@mizbans.com',
        'from_email': getattr(settings, 'DEFAULT_FROM_EMAIL'),
        'request': request,
        
        # here I have set my desired template to be used
        # don't forget to add your templates directory in settings to be found
        'email_template_name': 'password_reset_email.html'
    }

    opts.update(self.get_email_options())
    self.reset_form.save(**opts)

and in email.py :

class MyPasswordResetSerializer(PasswordResetSerializer):
context={'domain':settings.WEBSITE_DOMAIN,'site_name':'mizban'}

def get_email_options(self) :
  
    return {
        'email_template_name': 'password_reset_email.html',
        'context':'context'
    }

Я поместил пример html кода в password_reset_email :

 <html>
    <body>
      <p>welcome to{{domain}}</p>
      <p>site {{site_name}}</p>
    </body>
</html>

Работает, но отправляет html коды тагов в шаблоне письма!

Я решил эту ошибку, добавив следующее :

'html_email_template_name': 'password_reset_email.html'

to opts={} в методе сохранения

Вернуться на верх