なぜか cakephp上では変な時間(UTC)になってしまう時の対策。
続きを読む cakephp2.2 Model createdのtimezoneがUTCになる
はい。今日もPhpStormネタです。
cakephpで直接継承はしていないVendorやらに置いたClassを補完する方法。
今日も懲りずにPhpStormネタ。
Controllerで uses なんかで定義したModelの補完を有効にする方法。
連日PhpStormの話題ですが。
30日お試し期間に試しまくってるもんで。
cakephpのViewファイルをいじってる時にも補完が出てくるようになる方法を教えてもらったのでご紹介。
はまったので備忘録的に。
CakePHPのmodelを使って、レコードの削除をしてたんやけどどうもレスポンスが悪い。
Model の deleteAll メソッドに指定した検索条件のカラムににはちゃんとINDEXは貼ってあるけど
どうもINDEXが使われてないような感じがする。
で、MySQLの方で実際に発行されてるSQLを調べてみると
deleteAllがコールされた段階で SELECT とDELETE がセットで呼ばれてるようだ。
deleteAll に指定した検索条件で SELECT した後、その SELECT 結果から取得した id で DELETE をやってる。
普通に使ってるテーブルなら id はたいてい PRIMARY KEY になってるから気にしてなかったけど
今回のはログテーブルだったもんで id にINDEX 貼ってなかったのが原因だったようで…
id にINDEX追加したら無事爆速なレスポンスになったとさ。
タイトルのまんまですが結構はまったのでメモ。
Model内に直接書くとちゃんとコールバックが実行されるので
beforeSaveとafterFindを両方書いた