CakePHP: получить связанные записи в порядке?
У меня есть две модели: Event
а также Match
, Событие может иметь много совпадений. мой Match
модель имеет $order = array('match_order' => 'asc')
, match_order
колонка в моем matches
таблица базы данных просто INT
столбец для заказа совпадений.
У меня есть метод контроллера, который обновляет порядок совпадений. Тем не менее, поскольку я выбираю совпадения через событие, они, кажется, не приходят по возрастанию match_order
но по id
колонка. Вот пример вызова:
<?php
class EventsController extends AppController {
public function view($id) {
$event = $this->Event->find('first', array(
'conditions' => array(
'Event.id' => $id
),
'contain' => array('Match')
));
}
}
Все связанные матчи возвращаются, как и ожидалось, но только не в правильном порядке. Я очистил свои кэши моделей, есть ли что-то еще, что мне нужно сделать, чтобы получить порядок совпадений по значению в Match
модель?
1 ответ
Решил это. Забыл я мог уточнить order
в моих модельных ассоциациях, поэтому я добавил следующее Event
модель:
<?php
class Event extends AppModel {
public $hasMany = array(
'Match' => array(
'order' => array(
'match_order' => 'asc'
)
)
);
}