如何确保CakePHP中的参照完整性?

时间:2014-11-03 23:17:18

标签: cakephp foreign-keys

我在CakePHP中做了一些测试并发现,当我在客户端操作表单数据时,CakePHP不会自动确保引用实体的存在(例如select-dropdown的选项值)。

我找到了validation "exists",但它不是内置的,似乎只是一种解决方法。

如果我在DB Level上创建外键,CakePHP将无法处理数据库返回的异常,并且遵循Convention over Configuration方法,这无论如何都不是一个方便的解决方案。

那么最好的方法是什么,以确保CakePHP中的参照完整性自动化?

2 个答案:

答案 0 :(得分:0)

好吧,如果你看这篇文章是2007年,我想我必须运行一个非常旧版本的cakephp,我想你必须找一篇更新的文章,现在这个版本2.x.你会看起来很好用这个版本的项目

答案 1 :(得分:0)

使用'dependent' => true,

public $hasMany = array(        
    'UserDevice' => array(
        'className' => 'UserDevice',
        'foreignKey' => 'user_id',
        'dependent' => true,
        'conditions' => '',
        'fields' => '',
        'order' => '',
        'limit' => '',
        'offset' => '',
        'exclusive' => '',
        'finderQuery' => '',
        'counterQuery' => ''
    )

);