Поскольку пользователи могут входить во многие сообщества или не участвовать в них, имеет смысл рассматривать пользователей как ресурс, независимый от сообщества.Создайте их с помощью POST /users
и удалите их из системы с помощью DELETE /users/:id
.
То же самое для сообществ.Создайте их с помощью POST /communities
и удалите их с помощью DELETE /communities/:id
.
Теперь вы можете добавлять пользователей в сообщество по POST /communities/:id/users
, где полезная нагрузка содержит идентификатор пользователя, которого вы хотите добавить.Вы можете удалить пользователя из сообщества с помощью DELETE communities/:id/users/:userid
.
Каждый объект сообщества может иметь либо ссылку на URL для получения своих пользователей (/communities/:id/users
), либо включить пользователей в сам объект.
В качестве альтернативы у вас может быть ресурс membership
, чтобы связать сообщество и его пользователей.Это может быть интересно, если само членство имеет другие свойства, кроме идентификатора сообщества и идентификатора пользователя.