我正在学习有关 ondelete 参数字段的可选参数。 这些是预定义的值:“cascade”,“set null”,“restrict”,“no action”,“set default”
任何人都可以详细解释
答案 0 :(得分:9)
以Course
为例Student
。在Student
s上是Course
的外键。 ondelete
确定删除student_id
时Course
列(Student
)上发生的情况。
CASCADE:删除Course
时删除匹配student_id
的{{1}}记录
限制:只要与Student
相关,就无法删除Student
。
无操作:类似,但是是延迟检查:您可以删除Course
,但必须确保在提交交易时完整性正常。
SET DEFAULT:使用openerp默认定义(参见python模型定义中的Student
dict)
SET NULL:当_defaults
被删除时,Student
在数据库中变为student_id
。
在Python中,您可以在NULL
defintion中找到这些:
_columns