我想知道验证是必须的,在表格中没有但在表格中可用的字段上。在define_table中将它们标记为NULL只会使它们在表单中出现时才会被验证吗?
答案 0 :(得分:1)
form validators仅适用于表单,因此不会影响表单中不存在的字段。我不确定你将字段标记为NULL是什么意思,但是如果你指的是Field(..., notnull=True)
,那么在首次创建数据库表时执行SQL NOT NULL
语句(假设启用了DAL迁移) )。无论何时插入或更新记录(通过表单或任何其他方法),该选项都由数据库本身强制执行。如果notnull
字段留空,则会导致数据库出现操作错误。