@EVOSandru6

Как на Yii1 в AR сделать order by по связанным данным?

Добрый день,

Есть таблицы:

mc_rooms
-------------
id
name


и

ms_tarifs
-------------
id
room_id
price_small


Например у номера есть несколько тарифов:

Номер1: Тариф1 - 500р , Тариф2 - 600р, Тариф3 - 700р
Номер2: Тариф4 - 200р , Тариф5 - 500р, Тариф6 - 800р


Я хотел бы, чтобы при выводе номеров определеного общежития они сортировались по price_small Самого дешевого тарифа.

Это надо через Cdbcritera сделать я так понимаю. Не до конца понимаю как это с помощью sql сделать, пока как ваииант - предварительный перебор и обработка массива - не очень хороший вариант.
  • Вопрос задан
  • 225 просмотров
Решения вопроса 1
@newpy
web-dev
Во-первых таблицы должны быть связаны relation-ами. Т.е. они должны быть прописаны в моделях. Надеюсь что это у вас сделано.

А дальше все должно быть несложно, нечто вроде:
$rooms=Room::model()->with('tarif')->findAll(array(
    'order'=>'tarif.price_small'
));


Посмотрите в документации www.yiiframework.com/doc/guide/1.1/ru/database.arr. Там есть готовые куски кода которые вы можете использовать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы