我想为一个模型保存几条记录.如果没有出现问题,可以使用saveAll()轻松完成此操作:
我有一个通知表单,我从< select>中选择多个用户和两个领域,分别为主题和内容.现在,当我输出$this->数据包含的内容时,我有:
Array([Notification] => Array ( [user_id] => Array ( [0] => 4 [1] => 6 ) [subject] => subject [content] => the-content-here ) )
我读过Cake 1.3的书,为了@R_161_301@的多个记录,你必须得到$this->数据:
Array([Article] => Array( [0] => Array ( [title] => title 1 ) [1] => Array ( [title] => title 2 ) ) )
首先,这个数据库设计需要规范化.
原文链接:https://www.f2er.com/php/133022.html在我看来,像Notification可以有很多与之相关的用户.同时,用户可以拥有许多通知.因此,
>引入名为users_notifications的连接表.
>实施HABTM关系:通知hasAndBelongsToMany用户
在视图中,您只需使用以下代码自动调出多选表单以获取用户ID:
echo $this->Form->input('User');
发送到控制器的数据将采用以下形式:
Array( [Notification] => Array ( [subject] => subject [content] => contentcontentcontentcontentcontentcontent ),[User] => Array ( [User] => Array ( [0] => 4 [1] => 6 ) ) )
现在,您所要做的就是调用saveAll()函数而不是save().
$this->Notification->saveAll($this->data);
这就是Cake的做法!