我正在开发cakephp中的应用程序。我需要获取使用cakephp中的updateAll()函数更新的所有行的id。任何建议都将受到高度赞赏。 Thanx ..
这是我应该在我的App模型中做什么
class AppModel extends Model {
var $infos = array();
function updateAll($fields, $conditions = true) {
$this->$infos = $this->find('all', array('conditions' => $conditions));
$return = parent::updateAll($fields, $conditions);
$this->afterUpdateAll();
return $return;
}
function afterUpdateAll(){
foreach ($this->$infos as $info) {
//do something
}
}
}
这会有用吗??
答案 0 :(得分:1)
您必须发出find
,并传递您传递给updateAll
的相同条件。
如果更新操作更改了条件中使用的任何列中的数据,则应在调用find
之前使用updateAll
。
答案 1 :(得分:0)
如果您UPDATE
取消联合行 - 您可能会在SELECT
之后再次UPDATE
他们