나는 다음과 같은 모델을 가지고에 hasMany의 관계에서 행을 인출하는 방법 :는 CakePHP의
class AppModel extends Model {
public $actsAs = array('Containable');
public $recursive = -1;
}
class City extends AppModel { // for "cities" table
public $belongsTo = 'Country';
}
class Country extends AppModel { // for "countries" table
public $hasMany = 'City';
}
는 ..how 나는 국가의 도시를 가져 않습니다. 이런 식으로 뭔가 내가 알아 내려고 해요 : 나는 도시에게 내가 나라를 위해 호출 할 때마다 가져 오는 방지하기 위해 이러한 방식으로 AppModel이를 설정 한
$countries = $this->Country->first(); // fetch a country
$cities = $country->city->find('all'); // get the cities for that country
. 때로는 모든 도시를 검색 할 필요가 없으므로 기본 조인을 원하지 않습니다. 그러나 주어진 국가의 도시를 가져오고 싶을 때가 있습니다.
$cities = City->find('all', array(
'conditions' => array(
'City.country_id' => $country['Country']['id']
)
))
이 관계는 모델에 설립 된 후 도시에 액세스하는 가장 편리한 방법입니다 : 다음은 내가 알고있는 유일한 방법입니다? 그렇다면 왜 내가 $ belongsTo 및/또는 $ hasMany를 귀찮게하는지 이해하지 못합니다. 감사합니다