我在CakePHP中做了一些测试并发现,当我在客户端操作表单数据时,CakePHP不会自动确保引用实体的存在(例如select-dropdown的选项值)。
我找到了validation "exists",但它不是内置的,似乎只是一种解决方法。
如果我在DB Level上创建外键,CakePHP将无法处理数据库返回的异常,并且遵循Convention over Configuration方法,这无论如何都不是一个方便的解决方案。
那么最好的方法是什么,以确保CakePHP中的参照完整性自动化?
答案 0 :(得分:0)
答案 1 :(得分:0)
使用'dependent' => true,
。
public $hasMany = array(
'UserDevice' => array(
'className' => 'UserDevice',
'foreignKey' => 'user_id',
'dependent' => true,
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'exclusive' => '',
'finderQuery' => '',
'counterQuery' => ''
)
);