|
|
1
60
Django有一个 model validation 自1.2版起,系统已就位。 在评论中,sebbiq说“好吧,现在有一个地方可以进行模型验证……但它只在使用模型窗体时运行!所以问题仍然存在,当需要确保在数据库级别遵守验证时,您应该怎么做?在哪里打满“干净”?
不能通过Python级别的验证来确保在DB级别上遵守验证。最接近的可能是打电话
但即使这样做,仍有人可以使用
真正保证数据库级完整性的唯一方法是通过数据库级约束;通过ORM进行的任何验证都需要编写应用程序代码的人员知道何时执行验证(并处理验证失败)。
这就是为什么模型验证在默认情况下只在
|
|
|
2
6
我想你想要这个->
|
|
|
3
3
这个问题的根本问题是验证应该发生在模型上。这在Django(开发人员邮件列表上的搜索表单模型感知验证)中已经讨论了相当长的时间。它会导致重复,或者在命中数据库之前逃避验证。 虽然没有撞到后备箱,马尔科姆的 "poor man's model validation solution" 可能是避免重复的最干净的解决方案。 |
|
|
4
1
如果我“清楚地”理解您的意思,您必须重写函数get-db-prep-save而不是to-python |