带有来自模型的自定义验证消息的 Django 1.5 基于类的视图
Posted
技术标签:
【中文标题】带有来自模型的自定义验证消息的 Django 1.5 基于类的视图【英文标题】:Django 1.5 Class Based Views with custom validation messages from the model 【发布时间】:2013-03-07 21:45:58 【问题描述】:我正在我的 django 应用程序中编写一个相当简单的 CRUD 用于项目管理。我已经进行了以下设置(为简洁起见,省略了各种导入等):
#models.py:
class Project(models.Model):
name = models.CharField('Name', max_length=250, error_messages='required': 'Please enter a name for your project.')
description = models.TextField()
#views.py
class ProjectUpdateView(UpdateView):
model = Project
#templates/projects/project_form.html
<form action="" method="post">
% csrf_token %
form.as_p
<input type="submit" />
</form>
当我访问我的更新页面时,表单会显示我的两个字段(名称和描述)。如果我遗漏了名称,那么提交表单会返回
的错误This field is required
而不是
Please enter a name for your project.
我是否可以显示模型中定义的自定义错误消息,而不是通用的“此字段是必需的”?
【问题讨论】:
你可以在modelform中定义clean方法 最佳实践是使用模型表单并设置相应字段的 errors 属性 【参考方案1】:这是一张关于您遇到的问题的 Django 票:https://code.djangoproject.com/ticket/13693
看起来它已被接受但尚未修复。目前最好的选择是在表单类中显式处理验证。
【讨论】:
以上是关于带有来自模型的自定义验证消息的 Django 1.5 基于类的视图的主要内容,如果未能解决你的问题,请参考以下文章
Django:使用带有 executemany 和 MySQL 的自定义原始 SQL 插入
Django Rest Framework 序列化程序中的自定义错误消息
JWT:如何在密码或用户名错误 Django REST 上实现我的自定义错误消息