0

私は CakePHP 2 を使用してモデルクエリを無駄に実行しようとしました。私は3つのテーブルを持っています: コード: php

「オファー」テーブル (オファーは 1 つの「場所」に属します) 「場所」テーブル (「場所」には多くのオファーがあります) (場所は 1 つの「都市」に属します) 「都市」テーブル (「都市」は多くの「場所」)

「条件」パラメーターを使用して、特定の「都市」からすべての「オファー」を取得するための正しい構文を見つけることができません。

ここで私が試したこと。コード:

$this->set('offers', $this->Offer->find('all', array(
  'conditions' => array('Place.City.name' => 'MyCity'),
  'recursive' => 3)));

モデル関係(「hasOne」、「blongsTo」など)はpr()で正しいデータが見えるので問題ありません。

何か考えはありますか?

4

1 に答える 1

0

オファーモデルは場所に属しているため、オファーにはforeignKeyが含まれているため、条件は次のようになります。

array('Offer.place_id' => $placeid)

またはそのようなもの。place_id はもちろん、使用しているforeignKeyです。

編集:おっと、すぐに読んでください。場所ではなく都市が必要です。これにはモデルをバインドする必要があると思います。詳細については、http: //mark-story.com/posts/view/using-bindmodel-to-get-to-deep-relationsを参照してください。

于 2012-05-13T18:43:50.280 に答える