验证器和clean_field方法之间的django区别
Posted
技术标签:
【中文标题】验证器和clean_field方法之间的django区别【英文标题】:django difference between validator and clean_field method 【发布时间】:2014-05-09 07:50:53 【问题描述】:在django
中的form
中,用于字段的validator
和用于该字段的clean_<field>
方法有什么区别?
【问题讨论】:
【参考方案1】:Django 将首先运行内置(默认)字段验证器,然后是您的自定义字段验证器(在您的模型中使用 validators=[your_validator]
)。
然后,Django 将执行clean()
和clean<field>()
方法。
validator
和clean_<field>()
方法之间的主要区别在于后者仅适用于表单。 validator
可用于您的表单和模型(因此也可用于管理界面)。
此外,覆盖clean_<field>()
方法是根据数据库中的项目验证数据的推荐方法。
更多关于https://docs.djangoproject.com/en/1.6/ref/forms/validation/的信息。
【讨论】:
【参考方案2】:据我所知,一个字段可以有多个验证器(如 min_length、max_length),它们将由默认的 clean_field 方法调用。
【讨论】:
以上是关于验证器和clean_field方法之间的django区别的主要内容,如果未能解决你的问题,请参考以下文章