我正在使用其中一种语言“farsi”构建一个多语言网站: 到目前为止,一切工作都很顺利,但是当开始下一行文本时,右翼语言“波斯语/波斯语”没有正确对齐。这意味着下一行不会像往常一样从右到左语言对齐。 翻译工作。
settings.py
gettext = lambda s: s
#default language should be german
LANGUAGE_CODE = 'de'
#LANGUAGE_CODE = 'en'
#LANGUAGE_CODE = 'fa'
LANGUAGES = (
#('fr', gettext('French')),
('de', gettext('German')),
('en', gettext('English')),
('fa', gettext('Farsi')),
#('pt-br', gettext("Brazil")),
)
language_chooser.html
{% load localeurl_tags %}
{% load i18n %}
{% load tabs %}
{% for lang in LANGUAGES %}
{% ifequal lang.0 LANGUAGE_CODE %}
<li class="active"><a>{{ lang.1 }}</a></li>
{% else %}
<!--
{% if LANGUAGE_BIDI %}
<li>The current language is bidirectional</li>
{% else %}
<li>The current language is <b>not</b> bidirectional</li>
{% endif %}
-->
<li class="{% ifactivetab "en" %}active{% else %}inactive{% endifactivetab %}"><a href="{{ request.path|chlocale:lang.0 }}" accesskey="2">{{ lang.1 }}</a></li>
{% endifequal %}
{% endfor %}
base.html 中的我也加载了:
{% load i18n %}
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% get_current_language_bidi as LANGUAGE_BIDI %}
“farsi / persian”语言的 django.po 文件如下所示:
我该如何管理?
解决方案: 在使用属性“text-align:right;”定义新的css类“article_right_aligned_language”之后并修改我的基本模板如下,它现在工作!
<div {% if LANGUAGE_BIDI %} class="article_right_aligned_language" {% else %} class="article"> {% endif %}
{% block site_wrapper %}{% endblock %}
</div>
答案 0 :(得分:7)
文本对齐由CSS而不是Django处理。在容器元素上设置text-align
属性:
.container.right-aligned-language {
text-align: right;
}
然后,您可以使用模板中的条件语句将类right-aligned-language
应用于容器(或者此类问题的正文标记)。
答案 1 :(得分:1)
答案 2 :(得分:0)