For Want Of A Better Word

CakePHPでjoinしようとしたときのエラー 【Notice (8): Undefined offset: 0 [CORE/Cake/Model/Datasource/DboSource.php, line 1714]】

      2015/04/18

Cakeでfind()からjoinしようとしたときに下記Noticeが出て、検索もうまく行かなかった。

Notice (8): Undefined offset: 0 [CORE/Cake/Model/Datasource/DboSource.php, line 1714]
Notice (8): Undefined offset: 1 [CORE/Cake/Model/Datasource/DboSource.php, line 1714]

.
.
.

ちなみにその時ソースはこれ

なんぞなんぞと思って、WEB見たけどいまいち分からん。
参考にしていたサイト。
http://book.cakephp.org/2.0/ja/models/associations-linking-models-together.html
http://zisakuzien.exblog.jp/12954257

しょうがないので該当部分のソースを見ると..

むー$query[‘joins’]の中の要素0,1….が無いよってこと。。
あれ、joinsの中ってそういう構造だったけと思ってよく見たら、さらに一つ配列でくくらなければならなかった様子。

↓正しいもの

上手く行った。参考サイトを見ても、配列を2重にしている。。

なんぞこれー!!

他のconditionsとかfieldsとかより1階層多い。これは、複数指定できるようにかな。

 - cake, php

  関連記事

【サクッと始める】PHPでGoogle Analytics API(WEBアプリケーション)

注意 ①本記事で使っているGoogleAPI用PHPライブラリ「google-a …

[php]mail()の送信元、エラー送信先設定(from, return-path)

ちょっと整理。 設定例 [crayon-5a3679b7b1e2d0599625 …

【Cake】CakePHP_開発はじめる前に_いつも調べなおすことまとめ

Contents1 参考リンク集2 set flashのcssクラスを変更する3 …

[ruby][php]Excel出力操作の方法

Excel出力が要件としてもとめられた、言語は問わない、WEBではなくバッチで。 …

クロームでブラウザ・端末エミュレート機能の使い方。えらく見つけづらくなった。。

クロームのエミュレーターが見つけづらくなったのでメモ。 ①デベロッパーツールを開 …