Django Rest Framework Router URL управления отношениями ManyToManyField - PullRequest
0 голосов
/ 17 октября 2018

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

class Event(models.Model):
    title   = models.CharField()
    players = models.ManyToManyField(Player)

class Player(models.Model):
    name = models.CharField()

Я могу отредактировать членство для события, выполнив запрос, например

PATCH /api/event/3/ `{players: [2, 3]}`

Это проблематично, потому что это создает состояние гонки (мне нужно заранее знать старое членство, чтобы добавить новых участников)

Что-то, что я хотел бы, это что-то вроде

POST /api/event/3/players/ {id: 2}
DELETE /api/event/3/players/2/

Вопросы:

  1. Как настроить маршрутизатор, наборы просмотра и сериализаторы для достижения этой цели?
  2. Есть ли лучший способ, чем мое предлагаемое целевое решение?
  3. У меня были проблемы с поиском заголовка для этого вопроса (и, следовательно, с поиском связанных вопросов), какие ключевые слова я ищу?

Спасибо большое!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...