php - 用 cakephp 保存相对值

标签 php mysql cakephp cakephp-2.0

在 MySQL 中,我可以执行以下操作:

UPDATE table SET field=field+1 WHERE id=123

我如何在使用 CakePHP 方法时做同样的事情?

尝试了以下方法:

$this->Model->id = 123;
$this->Model->save(array(
    'field' => '`field`+1',
));

文章saving-your-data.html似乎没有涵盖这一点。

还搜索了 cakephp+update+relative , 没有发现任何相关内容。

UPDATE 现在我正在进行直接更新,它有效,但我认为可能有更好的方法

$this->Model->query("UPDATE ".$this->Model->useTable." SET field=field+1 WHERE id=123");

最佳答案

$this->Model->updateAll(  
         array('Model.count' => 'Model.count + 1'),  
         array('Model.id' => 1)  

  ); 

关于php - 用 cakephp 保存相对值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31679822/

相关文章:

mysql - CakePHP 2 应用程序在本地工作正常,但在运行时返回数据库错误?

url - 在 cakephp 中设置 baseurl

javascript - 如何从 Laravel 4.2 中的 View 脚本调用模型函数

php - 使用PHP/MYSQL根据部分值对数据进行排序

PHP-如何第一次插入表单数据和第二次更新相同的数据

sql - 使用 mysql 5.1.41 更新表中最高的几行

php - 如果我想删除数据库中的数据并且它是 codeigniter 中的外键,我该如何进行限制?

mysql - 输出参数可以按名称绑定(bind),而不是按排序?

php - Mysql多时间戳列更新

php - CakePHP:Mysql 在多个列上搜索多个查询