0
私のページングのための簡単な条件はできません。私は調査とキャンペーンモデルを持っています。キャンペーンには、キャンペーンモデルに多数のアンケート設定があります。cakePHP hasManyがSQLクエリに参加していません
私はアンケートを選択したいと思いますが、ページがリンクされていることを表示する必要がありますが、未知の列が表示されています。Survey.id - 調査の結果、調査はキャンペーンモデルに参加していません句。私はまたhasManyがクエリにテーブルを結合しないことを知った。
これ以外にどのようにすればいいですか?
キャンペーンに多数のアンケートがある場合、アンケートには1つのキャンペーンがありますか?したがって、特定のアンケートを選択すると、そのキャンペーンは1つのキャンペーンにのみリンクされますか? ここにページネーションが必要なのはなぜですか?おそらく私が理解していないものがあります。つまり、 'Model2.id'の代わりに' Model1.model2_id'をフィルタリングすると助けになる場合があります。 – nIcO
私が持っているものはキャンペーンのあるページです(このページのページ番号です)。ユーザーがアンケートを選択できるドロップダウンが必要な場合、その結果はその1つにリンクされている1つのキャンペーンを返します)。したがって、ページングページは1つの結果しか持たないでしょう。これは、キャンペーンにアクセスするための簡単な方法です(アンケートの内容はわかっていて、リンクされているキャンペーンではわかりません) – mauzilla
これは最も洗練されたソリューションではありませんが、手動で 'joins'キーで関係を追加することができます。しかし、私は最近、(これは私が作ったことを意味する)これをはるかにシンプルにする(コードが少ない)ことを発見した[リンク](http://cfc.kizzx2.com/index.php/restoring-elegance-to-cakephp-doing -multiple-joins-the-right-way /) – tigrang