在一个查询中保存许多habtm关联

时间:2013-02-17 16:02:39

标签: cakephp

我有User模型和Speciality模型。 Speciality HABTM User

鉴于speciality_iduser_id数组,我想在给定的专业中添加许多用户。到目前为止我试过了:

foreach($users as $user_id) {
    $data[] = array(
        'Speciality' => array('id' => $this->Speciality->id),
        'User' => array('id' => $user_id),
    );
}
if(!empty($data)) {
    $this->Speciality->saveAll($data);
}

但是它只在specialities_users表中保存了一行,而不是所有的关联...我的目标可以通过大量插入带有(speciality_id,user_id)对的specialities_users表来实现jus但我希望实现这一目标在蛋糕。

1 个答案:

答案 0 :(得分:0)

看看我对这个问题的回答,基本上是一样的。

你必须创建数组(没有创建它将更新),检查它是否已经在数据库中 - 如果没有,保存它。

看这里:

Cakephp save Session to db after login