ツアーhasManyの美脚検索()一致する各フィールドの1 CakePHPの
空港は、私は、CakePHPを使用して、各目的地の空港のための最も安い旅行を見つけることができますどのように何の団体
を持っていませんか?私が考えることができるのは、空港の配列を通してforeachすることだけです。これはデータベースへの何百ものクエリを必要とするでしょう(これは最速の方法ではないと思います)。
function getCheapestTrip($origin){
$airports=$this->Airport->getAirports();
foreach($airports as $airport):
$cheapest_flights=$this->Trip->find('first',
array(
'conditions'=>array('Leg.origin'=>$origin, 'MIN(Trip.price) as price'),
'fields'=>array('Trip.origin','price','Leg.destination','Leg.depart','Leg.arrive'),
'recursive'=>2,
));
endforeach;
}
}
はまた、私はこのデータ型のものは、CakePHPの規約(脂肪モデル、スキニーコントローラ)あたりのモデルであるべきだと思います。 getAirportsのような別のモデルの関数を呼び出すために読み込んだのですが、loadModelを使うことができますが、CakePHPのコントローラメソッドのセクションでそれを見つけました。他のモデルのデータ/モデル関数を別のモデル/関数にどのように取得する必要がありますか?
ありがとうございます!
あなたが提供したコードでは、$ airportをループしていますが、どこにでも$ airportを使用していません。何度も同じクエリを実行しています。あなたは病状がありませんか? – RabidFire
ええ、私が投稿したコードは間違いなくちょうど出発点であり、以前は投稿したときに疲れました。私はこの事をもう一度考えてみようと思っています。もし私がそれを得ることができなければ、何か他のものを投稿/編集するつもりです。コメントしてくれてありがとう。 – JohnAllen