Ich versuche übersetzte E-Mails an meine Benutzer entsprechend ihrer Sprache in user.language zu senden. Um dies zu tun, überschreibe ich die Methode send_mail von meinem BaseMailerService.Django E-Mail-Übersetzung funktioniert nur lokal
from django.utils.translation import override
class BaseTranslatedMailerService(BaseMailerService):
"""
Renders the acutal content of an email according to the users configurated
language.
"""
def send_mail(self, context, attachments=None):
recipient_obj = context.get('recipient').get('user_obj')
# Default for all language settings is 'en'
with override(recipient_obj.language):
return super(BaseTranslatedMailerService, self).send_mail(context=context,
attachments=attachments)
Lokal in meinen Tests bekomme ich es die übersetzten Versionen der E-Mail nach user.language zu senden, aber es sendet nur die englischen Mails jedes Mal in meiner Server-Umgebung. Vielleicht muss es etwas mit Thread-Sprache tun, die ich einstellen muss?