タグ

ブックマーク / ikebukuroworker.blogspot.com (1)

  • CakePHPでアソシエーション先のフィールドを検索対象に含めたい場合

    コントローラー内でfind()検索するとき、対象のテーブルだけではなく、hasManyなどのアソシエーションでつながっている先のテーブルのフィールドを検索したいことがある。 この場合、単純に find('all',array('conditions'=>array( '対象テーブル.id '=>"%{$this->data['対象テーブル']['title']}%", '対象テーブル'.'関連テーブル'.id like '=>"%{$this->data['対象テーブル']['title']"))); とやって、できるかなーと思っても機能しない(><)。。 で、それを回避するためにいったん、アソシエーション先のテーブルを検索してその結果のidを、find('list')で保持しておき、それを検索結果に含める、という段階をとる。 $id_list = $this->対象テーブル->関連テーブ

  • 1