Django Crispy表单和HTML布局中的i18n

时间:2014-01-15 10:17:10

标签: django django-forms django-crispy-forms

我尝试搜索但找不到任何答案,在Django crispy表单中有一个HTML布局对象,它允许您将自定义HTML注入到表单中,我正在创建一个CreateView表单,它实现了一些相关的任意创建我按以下方式在我的字段下注入HTML:

HTML(
'''<p class="add">
      <a href="{% url 'manager-add-category' %}">{% trans 'Add a category' %}</a>
   </p>'''
),

我的问题是,尽管url标签工作正常,但trans标签不会在脆弱的形式中解析,是否有替代方案(可能在脆弱的形式?)来维护i18n? 在表单模板中有正确的i18n加载标记:

{% load i18n %}
{% load crispy_forms_tags %}

1 个答案:

答案 0 :(得分:4)

因为你试图在某个.py文件中进行操作(据我所知),那你为什么要使用templatetags呢?使用python。

injected_html = u"<p class='add'><a href='%(url)s'>%(translation)s</a></p>" % {'url':some_get_url_method(), 'translation':_(u"Add a category")}

HTML(injected_html)