2011-08-08 9 views
10

私はtypeと呼ばれる列の画像テーブルを持っています。私は単にタイプをgalleryに変更するためにすべての行を更新したいと思います。ここではuser_idが特定のユーザーに一致します。CakePHP updateAll()発行

私はこのコード

$this->Image->updateAll(array('Image.type' => 'gallery'), 
    array('Image.user_id' => $this->Auth->user('id'))); 

を使用しています。しかし、私はこのエラーを取得する:SQL Error: 1054: Unknown column 'gallery' in 'field list'

はなぜギャラリーがフィールドリストに追加されていますか?
構文はギャラリーにタイプを設定する必要はありませんか?

ありがとうございます!

The $fields array accepts SQL expressions. Literal values should be quoted manually.

したがって、次のように動作するはずです::このthe manualで見つかった

答えて

22

$this->Image->updateAll(
    array('Image.type' => "'gallery'"), 
    array('Image.user_id' => $this->Auth->user('id')) 
); 
+0

くそー、優れた答えを、私はすべての朝類似したクエリを見つめてきました。 – usumoio

関連する問題