Задать вопрос
jeston
@jeston

Как реализовать связывание таблиц Yii не по primary key?

Имею две таблицы №1 ObjectSchedule и №2 ObjectScheduleDate, связь между ними

YFbtV.png

Хочу по id в №1 получить связанные с ним id_schedule в №2, которая не primary key.

Пишу следующий код в модели для №1 ObjectSchedule:

return array(
                     'scheduleDates' => array(self::BELONGS_TO, 'ObjectScheduleDate', 'id')
                    );


аналогично для №2 ObjectScheduleDate:

return array(
                     'scheduleDatesId' => array(self::HAS_ONE, 'ObjectSchedule', 'id_schedule'),
                    );


В итоге не получаю ничего, пустой ответ. ОК, чуть изощряюсь, пишу так:

return array(
                     
                      'scheduleDates'  => array(self::BELONGS_TO, 'ObjectScheduleDate',  array('id' => 'id_schedule'))
                    );


Так получаю только первую запись с датой (которые отметил на скрине) вместо трёх.

Теряюсь в догадках и прошу помощи.

Спасибо.
  • Вопрос задан
  • 3020 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@rowdyro
'scheduleDates' => array(self::HAS_MANY, 'ObjectScheduleDate', array('id' => 'id_schedule'))
Ответ написан
Ваш ответ на вопрос

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

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