So che posso usare $this->Model->save()
per aggiornare un particolare record se passo l'id in, ma come posso aggiornare un singolo campo su quella riga?query UPDATE con CakePHP
Ho una tabella users
con un campo balance
. Voglio aggiornare il campo balance
in base a ciò che è già presente.
Ad esempio, un utente ha $ 20 nel campo del saldo. Voglio aggiungere $ 1 per renderlo $ 21. L'unico modo che conosco come fare questo è quello di utilizzare
$balance = $this->Model->find('first', array(
'conditions' => array('User.id' => $userId),
'fields' => array('User.balance')
));
$this->Model->save(array(
'User' => array('id' => $userId, 'balance' => $balance['User']['balance'] + $credit)
));
Come posso ottenere che tutto in una save
chiamata?
mi ha battuto :) Ecco collegamento API http://api.cakephp.org/class/model#method-ModelsaveField – tigrang
Non sono nemmeno un ragazzo di CakePHP (più di un ragazzo CodeIgniter) e l'ho capito! Scusate! – David
Solo una nota in più: assicurati che '$ this-> Model-> id' sia impostato prima della chiamata – tigrang