В течение недели или около того я пытался выяснить, как мне создать правильную систему дружбы в CakePHP.Я прочитал эту и эту ветку, но я не могу заставить ее работать.
Я прочитал об этом гораздо больше тем, но, похоже, ни у кого нет подходящего примера.
В настоящее время у меня есть таблица пользователей (идентификатор, имя пользователя, пароль, электронная почта и т. Д.).) и таблица дружеских отношений (id, user_to, user_from, status).
Шаг 1 - запрос дружбы
Если пользователь отправляет запрос дружбы, тогда строкавставляется с запрашивающим user_id и user_id пользователя, от которого запрашивается дружба, поэтому он может выглядеть следующим образом:
id |user_from |user_to |статус
1 |1 |2 |0
Таким образом, я могу легко показать ожидающих друзей user_id = 2, выбрав все записи, где user_to = 2
Шаг 2 - Подтвердить дружбу
Я настроил его так, что user_id 2 теперь видит, что user_id 1 хочет стать друзьями. Если он щелкнет ссылку подтверждения, статус изменится на 1, см. Ниже
id |user_from |user_to |статус
1 |1 |2 |1
Я создал все виды проверок, чтобы строка оставалась уникальной.
Шаг 3 - Показать друзей
Я думал, что это будет легко, еслиЯ хочу показать друзьям user_id = 1, тогда я просто делаю выбор с user_from = 1 ИЛИ user_to = 1, однако это не работает.
User_id 1 может быть запросчиком, но также может быть запрошен,поэтому JOIN покажет странные результаты.
Кто-нибудь знает решение?Я рад восстановить всю систему, если я не все делаю правильно!Любые намеки в правильном направлении также приветствуются ...