Комментарии 8
> Model B -> Model -> A ( с условиями, где выборка идёт по полям Model A)
Можно или кусочек кода или расшифровать что тут имеется ввиду.
Можно или кусочек кода или расшифровать что тут имеется ввиду.
0
Посмотрел свои исходники, немного я напутал, но это сути не меняет. Вот модели:
Immovable hasMany Best
Immovable actAs Image
Best belongs to Immovable
Выбирать надо по критерию Best.country_id
$this->Immovable->Best->find('all',array('conditions' => array('Best.country_id' => $country), 'limit' => 5,
'contain' => array('Immovable' => array('order' => array('Immovable.created' => 'ASC')))));
Выборка идёт правильно. Однако behavior, который на Immovable прицеплен, — не срабатывает. Не обрабатывает поля, полученные подобными запросами.
Immovable hasMany Best
Immovable actAs Image
Best belongs to Immovable
Выбирать надо по критерию Best.country_id
$this->Immovable->Best->find('all',array('conditions' => array('Best.country_id' => $country), 'limit' => 5,
'contain' => array('Immovable' => array('order' => array('Immovable.created' => 'ASC')))));
Выборка идёт правильно. Однако behavior, который на Immovable прицеплен, — не срабатывает. Не обрабатывает поля, полученные подобными запросами.
0
Я не нашел в коде cakephp обработки behavior для связанных моделей, только для основной, во всяком случае для простых связей.
Я бы посоветовал бы Вам небольшой хак.
$results = this->Immovable->Best->find('all',array('conditions' => array('Best.country_id' => $country), 'limit' => 5, 'contain' => array('Immovable' => array('order' => array('Immovable.created' => 'ASC')))));
$this->Immovable->Behaviors->Image->afterFind($this->Immovable, $results, false);
Теоретически это должно сработать.
Я бы посоветовал бы Вам небольшой хак.
$results = this->Immovable->Best->find('all',array('conditions' => array('Best.country_id' => $country), 'limit' => 5, 'contain' => array('Immovable' => array('order' => array('Immovable.created' => 'ASC')))));
$this->Immovable->Behaviors->Image->afterFind($this->Immovable, $results, false);
Теоретически это должно сработать.
+1
буквально вчера проскочила книга по прирожку — www.pseudocoder.com/Super_Awesome_Advanced_CakePHP_Tips.pdf, и вроде там было про такой случай. надеюсь поможет :)
0
я вообще-то работаю с ZF, но по аналогии могу сказать — иногда стоит использовать модель для view.
0
>Image — чудесный behavior Евгения Томенко,
Хи-хи, я знаменит :)
Хи-хи, я знаменит :)
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
CakePHP. Behaviors — измена!