lazy_den
@lazy_den
Студент, Yii разработчик

Как добавить в Yii отсутствие отношений (relations)?

Имеется модель Места, оно принадлежит к модели Метро.
Как добавить отсутствие метро?
Чтобы особо не мучаться я решил добавить в БД id 0 name Отсутствует, и как оказалось потом средствами фреймворка я не могу добавить в бд запись с id 0, если эта запись пропала.
В некоторых участках кода приходится вызывать $model->metro->name (связь), а у многих элементов  metro_id = 0.
Как правильно все сделать?
  • Вопрос задан
  • 132 просмотра
Решения вопроса 1
fornit1917
@fornit1917
Костыли какие-то. Напишите просто у "места" вот такой метод
public function getMetroName()
{
     return $this->metro ? $this->metro->name :  'Отсутствует'
}


И не надо в таблицу metro добавлять никакие фейковые записи. У "мест" без метро значение metro_id должно быть NULL.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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