通过Django Template检测模板中使用的语言

时间:2015-04-14 06:39:30

标签: python django html5 django-models django-templates

有可能Django意识到在模板中使用哪种语言并改变HTML方向的元素并对齐?例如,我希望有时在一个元素中使用波斯语,另一次我想在那里使用英语,这两个都是通过数据库得到的。 另外,我不想一个接一个地操纵每个元素;我想要整个模板的通用解决方案。

<p style="direction: ltr">Hi!<p>

有时:

<p style="direction: rtl">Hi!<p>

1 个答案:

答案 0 :(得分:8)

是的,你可以。 例如,在您的模板中

{% load i18n %}
...
{% get_current_language as LANGUAGE_CODE %}

{% if LANGUAGE_CODE == 'en' %}
<div class='one-direction'>test</div>
{% else %}
<div class='another-direction'>test</div>
{% endif %}

在css文件中为类添加样式。

了解有关获取语言代码的更多信息:

Django: How to get language code in template?

==更新==

@altruistic, 将动态css类添加到body元素并为p元素添加样式。例如:

body.one-direction p:  direction: rtl
body.another-direction p:  direction: ltr

因此,您只需要检查一次语言