我正在处理的不是英文语言的项目。我在注册过程中遇到了一些问题。Django - 如何覆盖html中的表单模板标签
在我的注册HTML我有:
...
<form action="" style="text-align: center" method="POST">{% csrf_token %}
<ul style = "text-align: left">
{{user_form.as_p}}
</ul>
<input type="submit" value="Užsiregistruoti" onclick="validateForm()"/>
</form>
...
现在的文字是默认的英文。该{{user_form.as_p}}
取值从我forms.py:
...
fields = ('username', 'password1', 'password2')
...
有没有办法离开形式值不变,并改写我自己语言的HTML部分?我怎么做?我不能只是采取生成的HTML部分和翻译它,它不会那样工作。
您的意思是“{{user_form.as_p}}”,您想用自己的语言编写。 –
您需要为此启用Django的'I18N'功能。这是一个广泛的话题,但非常好[记录在这里](https://docs.djangoproject.com/en/1.8/topics/i18n/translation/)。基本设置完成后,您可以将表单上的标签翻译为设置中设置的任何语言。以一种形式,例如如'your_name = forms.CharField(label = _('Your name'),max_length = 100)',或者如果表单来自模型,则通过模型中的'verbose_name'属性。 – sthzg
:)我以某种方式认为你正在开发一个需要支持多种语言的项目(这完全不是你所写的)。如果您的项目需要使用单一语言,那么@shellbye的答案当然更简单更正确。 – sthzg