Когда мы применяем language = 'ar' kwargs к API send_db_sms (), это изменит язык всего веб-приложения.

from dbmail import send_db_sms
send_db_sms(
    # slug which defined on db template
    slug='welcome',

    # recipient can be list, or str separated with comma or simple 
    # string    
    recipient='+79031234567',

    # All *args params will be accessible on template context
    {
        'username': request.user.username,
        'full_name': request.user.get_full_name(),
        'signup_date': request.user.date_joined
    },

    # Optional kwargs:

    language='ar',
    )

Передавая language = 'ar', kwargs функции send_db_sms (), она не должна изменять язык всего веб-приложения.

Пожалуйста помоги,

0
Ankit 30 Май 2019 в 08:37

2 ответа

Лучший ответ
send_db_sms(
      sms_template,
      mobile_number,
      {},
      language='DE'
   )
translation.activate(self.request.LANGUAGE_CODE)

Есть некоторая ошибка в

Джанго - dbmailer

Библиотека, поэтому после использования send_db_sms с языковой опцией следует использовать приведенный ниже код для продолжения на том же языке, иначе это изменит язык всего сайта

translation.activate ( self.request.LANGUAGE_CODE )

0
Ankit 20 Июн 2019 в 08:55

В идеале этого не должно происходить.

Возможно, вы определили языковую переменную и вне функции, и она переопределяет все переменные. Пожалуйста, убедитесь, что вы не использовали его где-либо еще.

Кроме того, у вас может быть язык по умолчанию для вашего приложения вне этой функции, поэтому вне этой функции ваше приложение будет рассматривать этот язык по умолчанию.

Надеюсь это поможет.

0
rksachin 30 Май 2019 в 07:17