0
我將解釋這種情況。用cakePHP函數增加多個記錄中的字段
我有一些'模塊',其中一個字段是主頁面中的'位置'。如果我創建/編輯具有特定位置的模塊,我想檢查其他具有更高或相同位置的模塊,並將它們向前移動一個位置。
在我的解決方案中,我使用模型的query()
函數。
怎麼樣?
在我的模塊型號我有一個函數...
function moveModules($includedPosition){
if(!is_numeric($includedPosition)){
return false;
}
$sql =
"UPDATE modules "
. " SET modules.position = modules.position + 1 "
. " WHERE modules.position >= $includedPosition "
;
$result = $this->query( $sql);
}
我可以在beforeSave()
或控制器的地方我想使用這個功能,但...
我想問如果存在不使用自定義查詢的可能解決方案。
感謝
SOLUTION(感謝Headshota)
function moveModules($includedPosition){
if(!is_numeric($includedPosition)){
return false;
}
$this->updateAll(array('Module.position'=>'Module.position + 1'), array('Module.position >='=>$includedPosition));
}
它的工作原理!謝謝 – raultm 2011-05-06 11:25:05