将所有自定义验证放在模型中有什么问题?

2024-05-29 06:10:38 发布

您现在位置:Python中文网/ 问答频道 /正文

Django的ModelForms很酷,但是我很难理解为什么你要在表单中加入数据完整性规则,而这些规则可能就在模型中,perhttps://stackoverflow.com/a/18876223/1207253,他接着写道“这不是默认的,正如here所解释的,因为它会干扰某些特性……”

我已经阅读了引用的链接和https://github.com/danielgatis/django-smart-save,但仍然不明白为什么这不是推荐的方法。这种方法会干扰哪些特性?排除字段工作。默认值有效。我错过了什么?你知道吗


Tags: django方法https模型githubcom表单here
1条回答
网友
1楼 · 发布于 2024-05-29 06:10:38

我能想到的唯一缺点是,如果通过admin保存模型,full_cleanclean(无论您在save中调用哪个)将被调用两次。不应该有任何副作用。你知道吗

表单验证限制了用户输入数据的方式,模型验证指定了在将数据存储到数据库之前必须进一步处理/验证数据的方式。所以,除非表单非常复杂,否则在模型中验证就可以了。你知道吗

在整个项目中,使用您最熟悉的方法并坚持使用,因为这里没有很强的惯例。你知道吗

相关问题 更多 >

    热门问题