Maksclub
@Maksclub
maksfedorov.ru

Как в fields() модели вывести связь один ко многим?

Есть 3 модели (Здание, Фирма и Категория)

Вывожу в fields у модели Фирма связанную модель Здание так:
public function fields()
    {
        return [
            'id',
            'name',
            'phones',
            'building',
        ];
    }


а как вывести Категория? Связь сгенерирована стандартными средствами gii,
все методы связей
/**
     * @return \yii\db\ActiveQuery
     */
    public function getBuilding()
    {
        return $this->hasOne(Building::className(), ['id' => 'building_id']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getFirmCategories()
    {
        return $this->hasMany(FirmCategory::className(), ['firm_id' => 'id']);
    }

    /**
     * @return \yii\db\ActiveQuery
     */
    public function getCategories()
    {
        return $this->hasMany(Category::className(), ['id' => 'category_id'])->viaTable('{{%firm_category}}', ['firm_id' => 'id']);
    }

  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
usdglander
@usdglander
Yipee-ki-yay
public function fields()
    {
        return [
            'id',
            'name',
            'phones',
            'building',
            'categories',
        ];
    }

Разве так не работает?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы