【发布时间】:2014-07-06 05:42:00
【问题描述】:
我有这个非常简单的 Django 表单
from django import forms
class RegistrationForm(forms.Form):
Username = forms.CharField()
Password = forms.CharField()
我手动管理,不使用模板引擎。相反,我使用 ajax POST 发送数据并期望收到返回的验证错误。当我在使用其他框架时,我曾经在键值对中收到 JSON 格式的验证错误(键是包含错误的字段的名称,值是错误消息)。
{
Username: "This field is required.",
Password: "This field is required.",
}
我试图在 Django 中实现相同的结果,但我不明白如何访问原始错误消息(相对于单个字段)并将它们本地化。
form.errors 提供对 HTML 代码的访问权限(如下所述:displaying django form validation errors for ModelForms)。我不需要那个。我更喜欢form.Username.validationError这样的东西:这样的东西存在吗?
如果是,另外我还想知道验证错误消息是否会自动翻译成用户语言,如果没有,最好的方法。
【问题讨论】:
-
谢谢!我为自己没有注意到这一点而感到愚蠢。现在阅读。
-
是的,form.errors.items() 解决了问题 - 仍然需要本地化消息思想。
-
Docs 应该能帮上忙。
-
这能回答你的问题吗? Returning pure Django form errors in JSON
标签: python json django validation