[cakephp] saveできない時のチェックリスト

2015/04/01 | 開発記録 | hideichi

save されない、
update できない、
などなど、「あれ?」という時にチェックする一覧を作ってみました。

1、$this->data に値が入っていない
初歩ですね。var_dumpでチェック。

2、validate に弾かれている。
save の第2引数に falseを入れるとvalidateを無視できるらしいので、試しにやってみる。

$this->save($data, false)

3、whitelist が設定されている。
設定されているフィールドだけ更新するというものらしい。
これが設定されている場合、入っていないと更新されない。

4、キャッシュが残っている。
フィールド名を変えたりした場合なんかは特に、キャッシュを削除しないと更新されない。
/tmp/cache/models
この中身を消す。

5、saveで上書きしている。
一つの処理に二つ以上のsaveがあって、後のsaveで前のsaveを上書きしている。
saveの第3引数に、更新するフィールドを明示することで回避できる。

$this->id = $id;
$fields = array('name');
$this->save($data, false, $fields);

今回は5にやられた。
まあ、コードは見通しよく、綺麗に書きなさい。
っていう事なんだろうけどさ!

前の記事:

次の記事:

2015/04/01 | 開発記録

コメント/トラックバック

トラックバック用URL:

この投稿のコメント・トラックバックRSS




管理人にのみ公開されます

前の記事:

次の記事:

no image
原宿の床屋

世田谷区経堂すずらん通りの入り口。 それは、私が新潟の片田舎から上京し...

sakura VPS512 kusanagiにbaserCMSを引越する
sakura VPS512 kusanagiにbaserCMSを引越する

いきなり結論 ・kusanagiインストール簡単 ・はっきり速い それ...

[baerCMS]イベントリスナーで表示内容を書き換える
[baerCMS]イベントリスナーで表示内容を書き換える

プラグインからheaderの内容を条件に応じて書き換えようとしたら、1...

Coreserver に baserCMSを入れる
Coreserver に baserCMSを入れる

試した日:2018/4/15 baserCMS:version 4.1...

no image
20時間でそこそこ上手くなるための4ステップ

最初の20時間 — あらゆることをサクッと学ぶ方法 | ジョシュ・カウ...

→もっと見る

PAGE TOP ↑