Получение данных с условием по связной таблице

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
quasar
Сообщения: 107
Зарегистрирован: 2014.10.22, 09:27

Получение данных с условием по связной таблице

Сообщение quasar » 2019.01.24, 19:22

Привет такая история. Пишу многопользовательский сайт в котором каждый юзер имеет свой блог. Дошел до вопроса разграничения прав, чтобы каждый юзер мог управлять только своим блогом. Структура базы такова что при создании блога я записываю в таблицу айдишник владельца этого блога. А дальше пошло дерево (категория блога) - содержит айди названия блога, (пост) - содержит айди категории блога. Другими словами Чтобы мне узнать кто владелец поста надо посмотреть какая у него категория, к какому блогу эта категория относится и кто у блога хозяин. Не знаю может это дурная система но проблема сейчас в том как вледельцу вывести только его посты? Тоесть как мне при выборке постов задать условие что выбрать только посты данного юзера?

quasar
Сообщения: 107
Зарегистрирован: 2014.10.22, 09:27

Re: Получение данных с условием по связной таблице

Сообщение quasar » 2019.01.24, 19:28

Конечно одно с простых решений это натыкать в таблицы категории и в таблицу постов айди пользовтателя, но как то получится избыточно это ведь по цепочке связей можно узнать кто владелец поста. Если добавить во все таблицы айди пользователя то понятно что выборка тогда становится простой. Может кто подскажет какая лучше практика и возможно есть вариант выборки по цепочке?

quasar
Сообщения: 107
Зарегистрирован: 2014.10.22, 09:27

Re: Получение данных с условием по связной таблице

Сообщение quasar » 2019.01.26, 20:05

Вроде достаточно простая задача, неужели никто не делал такого? Да согласен это сложные запросы и скорее всего прийдется джойнить все таблицы пока не доберусь до таблицы юзера и по ней сделаю условие. Но может кто то подскажет дельный совет как у себя реализовывал такую структуру дерева и как бегать по этому дереву условиями на каждом с уровней. Это хорошо что у меня сейчас такое маленькое дерево, а если брать поглобальней типа адреса, а там: страна, область, город, район, улица, дом, квартира))) По такому дереву бегать гораздно сложнее с условиями... Может кто то статейку хоть видел как народ реализовывал?

UrlRule
Сообщения: 13
Зарегистрирован: 2016.05.27, 15:26

Re: Получение данных с условием по связной таблице

Сообщение UrlRule » 2019.01.28, 00:24

Тоесть как мне при выборке постов задать условие что выбрать только посты данного юзера?
- по blog_id, к которому привязать user_id.
Вот одно не пойму, зачем между постом и блогом категория. У поста blog_id, а категории это отдельная таблица, которую можно привязать к блогу, в таблице blogs типа category_id.
Название смотря где используешь. Если это название поста, то и должно быть в таблице поста, а если название блога, то в таблице блога.
Может вопрос не понял, но как-то размыто все.

Ответить