如何在Django中更改contrib.auth.views.password_change视图文本?

时间:2016-05-25 06:53:38

标签: python django

我使用Djangos默认的passoword_change视图,但我想更改其文本,如需求文本和字段标签。例如,我将这些文本发送到网站:

  • 您的密码与其他人不太相似 信息。
  • 您的密码必须至少包含8个字符。

我如何更改这些文本?

urls.py:

url(r'^password-change/$', 'django.contrib.auth.views.password_change',
    {'template_name': 'index/salasanan_vaihto.html'}, name='userauth_password_change'),
url(r'^password-change-done/$', 'django.contrib.auth.views.password_change_done',
    {'template_name': 'index/salasanan_vaihto_valmis.html'},
    name='password_change_done'),

2 个答案:

答案 0 :(得分:2)

使用验证器defined by settings.AUTH_PASSWORD_VALIDATORS检查密码。

这些是implemented here类,因此您可以自己编写并覆盖def get_help_text(self)和/或validate()方法。

答案 1 :(得分:0)

These are验证错误(请参阅validation docs)。因此,他们translated使用标准的gettext方法。即:在代码中,一个不是硬编码字符串本身,而是一个密钥(例如:_('my_meg_key')),并且有一个外部文本目录(.po.mo文件),将这些关键字符串映射到实际语言适当的完整单词/句子。因此,从理论上讲,您可以使用Rosetta自行覆盖这些翻译。