Задать вопрос
mihail430899
@mihail430899
Вебмастер

Как получить связи связей в YII2?

Делаю проект чисто для себя, для обучения. Реализовую метки для постов. отдельно таблица постов, отдельно меток и отдельно таблица связей между постами и метками.

Что дальше делаю. При получении конкретного поста получаю вместе с ним через with связи с метками. Но поскольку таблица связей не содержит имен меток, а содержит только post_id, label_id, то дальше мне нужно еще дотянутся до имен меток, которые соответственно в отдельной таблице меток, чтобы вывести их в графическом представлении при выводе постов. Не понимаю, как это сделать

Текущий запрос
$posts = Posts::find()->limit(30)->with('labelsrelations')->all();


Сама функция связи в таблице постов:
public function getLabelsrelations(){
	return $this->hasMany(PostsLabelsRelationships::className(), ['post_id' => 'id']);
}


Связь labelsrelations здесь и получает для каждого поста id-шки меток. Остается дотянутся до имен.
  • Вопрос задан
  • 105 просмотров
Подписаться 1 Средний 6 комментариев
Решение пользователя Михаил Васильцев К ответам на вопрос (3)
mihail430899
@mihail430899 Автор вопроса
Вебмастер
Про via почитаю. Сделал я пока по-другому. Добавил в запрос:
$posts = Posts::find()->limit(30)->with('labelsrelations.labels')->all();


А в промежуточной модели PostsLabelsRelationships добавил связь с метками.
Ответ написан
Комментировать