【问题标题】:Detecting the language used in template by Django Template [closed]通过Django模板检测模板中使用的语言[关闭]
【发布时间】:2015-06-19 16:09:06
【问题描述】:

Django是否有可能意识到模板中使用了哪种语言并更改HTML方向的元素并对齐?例如,有时我想在一个元素中使用波斯语,而另一次我想在那里使用英语,它们都是由数据库获取的。 另外我不想一一操作每个元素;我想要整个模板的通用解决方案。

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

有时:

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

【问题讨论】:

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


【解决方案1】:

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

{% 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?

== 更新 ==

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

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

所以,你只需要检查一次语言

【讨论】:

  • 这是一个很好的解决方案,但是,对每个元素都这样做有点费时,没有通用的解决方案吗?
  • @altruistic ,如果您想为您的问题添加更多信息,我们会考虑其他选项。事实上,这是您问题的最佳答案。
  • @rnevius,感谢您的不灵活!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-01
  • 1970-01-01
  • 2013-07-14
  • 2017-01-07
  • 2023-01-22
  • 2013-04-22
相关资源
最近更新 更多