отправка сообщения на почту в зависимости от выбранного языка на сайте

Возник вопрос как можно определить с какой странице пришел пост запрос. Есть на сайте два языка. И в зависимости от того с какой страницы пришел запрос хотелось бы формировать разные сообщения. Сейчас сделал так:

if request.method == 'POST':
        if 'ru' in str(request):
            mes_mail = "Привет мир!"
            send_mail('Регистрация', mes_mail,
            settings.EMAIL_HOST_USER,
            mail, 
            fail_silently=False)
        elif 'en' in str(request):
            mes_mail = "Hellow word!"
            send_mail('Registers', mes_mail,
            settings.EMAIL_HOST_USER,
            mail, 
            fail_silently=False)

но это явно нехорошо. Пытался сделать через from django.utils.translation import gettext_lazy as _ Но строка f'Ваша регистрация на {session_date_visit} в {session_time_visit} подтверждена. спасибо.' не переводится на английски.

mes = _(f'Ваша регистрация на  {session_date_visit}  в  {session_time_visit}  подтверждена. спасибо.')

в файле django.po создается

#: .\registers\views.py:127
#, python-brace-format
msgid ""
"Ваша регистрация на  {session_date_visit}  в  {session_time_visit}  "
"подтверждена. спасибо."
msgstr "Your registration for {session_date_visit} at {session_time_visit} "
"confirmed. thanks."

но в сообщении не переводится.Если использую обычную строку(mes =_('привет')) то все переводится и работает корректно. Как правильно создать перевод для f-строки ?


Ответы (1 шт):

Автор решения: Vadim.Sharoikin

на данный момент реализовал так

mes = str(_('Ваша регистрация на ')) + session_date_visit + str(_(' в ')) + session_date_visit + str(_(' подтверждена. спасибо.'))

но все же хотелось бы узнать как реализовать с использованием f-строки

→ Ссылка