当我们在send_db_sms()API上使用language ='ar'kwargs时,它将更改整个Web应用程序的语言。
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()函数,它不应更改整个Web应用程序的语言。
请帮助
答案 0 :(得分:0)
理想情况下,它不应该发生。
您可能也在函数外定义了语言变量,并且该语言变量将覆盖所有变量。请确认您没有在其他任何地方使用它。
除此之外,您可以在此功能之外为应用程序提供默认语言,因此,在此功能之外,您的应用程序将考虑该默认语言。
希望这会有所帮助。
答案 1 :(得分:0)
send_db_sms(
sms_template,
mobile_number,
{},
language='DE'
)
translation.activate(self.request.LANGUAGE_CODE)
中有一些错误
django-dbmailer
库,因此在将send_db_sms与语言选项一起使用后,应使用以下代码以相同的语言继续进行操作,否则它将更改整个网站的语言
translation.activate(self.request.LANGUAGE_CODE)