CakePHP[CakePHP]IN句を使う場合はwhere()を使うな!whereInList()を使え 通常、IN句を使って指定のIDのレコード一覧を取ってくるには$this->Users->find('all')->whre();とすればよいのですが、$userListが空の場合エラーになってしまいます。従来は$userListの存在チェッ...2022.11.17CakePHPCakePHP3.xCakePHP4
CakePHP[CakePHP4]ModelをcontainしたらCannot convert value of type array to string になる場合 CakePHP4であるモデルをcontain()で追加したら、下記のエラーになりました Cannot convert value of type array to string 原因 テーブルに複合PK使っていました。 その場合、接続元...2022.11.14CakePHPCakePHP4
CakePHP3.x[CakePHP4]どこでもloadModel~ コントローラー以外でもModelを使いたい場合ってありますよね? え?使うなって。でもコンソールとかコンポーネントとかで使いたい場合あるでしょう? そんなときの方法です。 環境 CakePHP4(たぶんCakephp3も同じ) 方法 tra...2021.02.28CakePHP3.xCakePHP4
CakePHP3.x[CakePHP3.x]cakephp3 タイムスタンプが入らない カラムにcreatedやmodifiedがあると、自動的にタイムスタンプが入る機能があります。 当初、該当のテーブルには不要だったのですが、後から入れることになったので、カラムに追加して保存処理をやらせてみたのですが、なぜかタイムスタンプが...2020.03.26CakePHP3.x
CakePHP3.x[CakePHP3.x]CakePHP2にあったafterFind()やvirtualFiledsはどこに行った? CakePHP2ではモデルのafterFind()メソッドで検索結果の整形を行うことができました。 なんですが、CakePHP3ではなくなってしまったようです。 (参考)afterFind イベントやバーチャルフィールドはありません2019.12.05CakePHP3.x
CakePHP3.x[CakePHP3]Modelがモデル名?テーブル名?単数形?複数形? CakePHP3でModelの指定方法や、find()して帰ってくるデータのフォーマットがCakePHP3依然と大きく変わりました。 めちゃくちゃ混乱します。 ちょっとまとめました。 バージョン CakePHP3.x2019.04.11CakePHP3.x
CakePHP3.x[CakePHP3]Modelで後から追加したカラムだけ保存できない場合 あるモデルで、特定のカラムだけ保存できない。なんでやー。うーん。これ後から追加したやつだな。CakePHP3.x2019.04.10CakePHP3.x
CakePHP同じテーブルで条件を変えて同時に取得するには CakePHP2でHasManyでリレーションしているテーブルの最新のデータのみ取得と全件取得を同時にしたい場合どうしたらいいか…ちょっと悩みました。2018.05.30CakePHPPHP
CakePHPCakePHP2 ModelのbeforeFind()の謎な仕様 Cakeの・・・というよりPHPのクラスのお決まりな書き方で、オーバーライドする場合public function beforeFilter() { parent::beforeFilter();}ていう感じで親のクラスのメソッドを呼...2018.05.29CakePHPPHP