正如我在其他帖子中所读到的那样,表格的id与frist模型有关,必须由表单中的隐藏字段设置。
echo $form->input('Gallery.id', array('type'=>'hidden', 'value'=>$showcase['Gallery']['id']));
(见Update hasone relation behaves strangely (cakephp)上的问题)
但这不是那么冒险,因为任何人都可以编辑这个隐藏的字段值,并且会更新另一个数据集。
尝试使用与hasOne / belongsTo关系关联的2个模型更新整个数据集时,避免此类安全问题的最佳选择是什么?
THX
最佳斯蒂芬
答案 0 :(得分:0)
第一个选项是对保存
进行多次查询和检查所以无论什么方法在你的特定情况下效果最好......
答案 1 :(得分:0)
您可以切换到使用UUID。只需要将主键和外键更改为char(36),cake将完成剩下的工作。