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

Как правильно реализовать систему групп у пользователя?

Привет! Есть нужда сделать отображение постов для пользователя в зависимости от его группы. Групп может быть несколько. Офис, Второй офис, Третий офис. Они независимы и никакой иерархии не имеют. Так вот, нужно что бы посты из бд отображались только пользователям определенной группы. Хочу реализовать это красиво, поэтому и решил спросить) В SQL не силен
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой 7 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Akina
Сетевой и системный админ, SQL-программист.
нужно что бы посты из бд отображались только пользователям определенной группы.

Перевернись, не с той стороны смотришь. Наоборот, юзеру должны отображаться посты только его групп.
Решается элементарно.
На текущей структуре это будет

FROM post
JOIN user ON user_id = {текущий пользователь} AND FIND_IN_SET(post.group_id, user.group_ids_csv)

Однако функция в связи - это прощай индексы и здравствуй фуллскан.

ID username group
1 admin 1,2,3


Дурацкая схема хранения.
Если есть связь M:N, то должна быть связующая таблица (user_id, group_id).
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽