I donβt think CakePHP has a similar method for this in the usual save () on one line.
But the updateAll () method, which updates multiple rows, does support SQL fragments:
$this->Widget->updateAll(
array('Widget.numberfield' => 'Widget.numberfield + 1'),
array('Widget.id' => 1)
);
The first parameter is an array of updated fields / values, and the second parameter is the conditions for updating the rows.
Also, I think the only thing to use is:
$this->Widget->query('YOUR SQL QUERY HERE');
SQL. [EDIT: , ORM.]