【发布时间】:2012-04-16 06:55:30
【问题描述】:
所以也许我只是错过了一些东西。 SaveAll 数据工作正常......如果我取出 beforeSave 或者无论保存什么都只返回 true 。我要做的是检查 user_group_id/user_friend_id 的组合是否已经存在。如果不保存。
但是,如果您为一条记录返回 false,则似乎整个 saveAll 函数将退出运行。也许这是故意的?官方文档仅限于回答这个问题。
显然我可以将检查移至一个函数,但这似乎更好地涵盖每个插入/更新。
function beforeSave($options) {
//dont let any duplicates be saved
$count = $this->find('count', array(
'conditions' => array(
'user_group_id' => $this->data['UserGroupFriend']['user_group_id'],
'user_friend_id' => $this->data['UserGroupFriend']['user_friend_id'],
)));
if ($count)
return false;
else
return true;
}
【问题讨论】: