CakePHP:绑定模型不起作用
发布时间:2020-12-13 21:39:16 所属栏目:PHP教程 来源:网络整理
导读:我有用户HABTM专业. 在用户编辑中,有一个专业的复选框列表. 当我在用户模型中定义HABTM关系时,它正在工作. 但由于这种关系正在中断其他功能,我将其删除并将其放入用户控制器中 $this-User-bindModel( array( 'hasAndBelongsToMany' = array( 'Profession' =
我有用户HABTM专业.
在用户编辑中,有一个专业的复选框列表. 当我在用户模型中定义HABTM关系时,它正在工作. 但由于这种关系正在中断其他功能,我将其删除并将其放入用户控制器中 $this->User->bindModel( array( 'hasAndBelongsToMany' => array( 'Profession' => array( 'className' => 'Profession','joinTable' => 'professions_users','foreignKey' => 'user_id','associationForeignKey' => 'profession_id','unique' => true,'conditions' => '','fields' => '','order' => '','limit' => '','offset' => '','finderQuery' => '','deleteQuery' => '','insertQuery' => '' ) ) ) ); 该绑定函数的返回值也是如此. 现在,当我调用$this-> User-> saveAll($this-> data)时,不再在professions_users表中创建行. 任何的想法? 解决方法
bindModel的默认行为是对一个查找操作存在,然后恢复为默认关联.您可能认为保存操作不会触发此操作,但如果您使用
Cake’s count-caching feature,或者执行带有执行查找的afterSave回调的行为,则可能是错误的.
尝试传递false作为Model :: bindModel调用的第二个参数.这将使您的动态绑定持续到请求的持续时间.通过调用Model :: resetAssociations,您可以在saveAll完成后显式重置关联. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |