¿Cómo puedo actualizar un solo campo de registros múltiples en CakePHP?CakePHP - Cómo actualizar registros múltiples
Recupero múltiples registros usando $this->Item->find('all')
y necesito establecer valores diferentes para cada uno de ellos y guardarlos. Hago
$items = $this->Item->find('all', array(
'fields' => array('Item.id', 'Item.order'),
'conditions'=> array(
'Item.project_id =' => $this->request->params['project_id'],
),
'order' => array ('Item.order ASC')
));
foreach($items as $key => $item) {
$item->saveField('Item.order', rand(1, 10));
}
pero plantea un error diciendo
Fatal error: Call to a member function saveField() on a non-object
¿Qué estoy haciendo mal?
Ver [@ respuesta de hugofcampos] (http://stackoverflow.com/a/18255526/216084) para el rendimiento. –
Con la introducción de [Model :: saveMany] (http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-savemany-array-data-null-array-options- array) en CakePHP 2.0, consulte la respuesta de @ hugofcampos para un mejor acercamiento a esto. –
@HamidNazari Creo que esto no será bueno si hay miles de campos no es recomendable –