Существует ли в DRF стандартный способ создания, обновления и / или удаления нескольких ресурсов в REST API?
Скажем, путь /todo-lists
относится к коллекции списков задач, а /todo-lists/<id>/items
- коллекцияпунктов указанного списка задач.Например, GET /todo-lists/<id>/items
возвращает
[
{"id": 1, "text": "buy groceries"},
{"id": 2, "text": "do laundry"},
{"id": 4, "text": "book flight"},
{"id": 7, "text": "walk the dog"}
]
Предположим, пользователь выбирает эти данные и локально редактирует их следующим образом (например, в веб-браузере или мобильном приложении)
[
// item 1 deleted
{"id": 2, "text": "wash clothes"}, // text changed
{"id": 4, "text": "book flight"}, // unchanged
{"id": 7, "text": "walk the dog"}, // unchanged
("id": ?, "text": "wash the car"} // new item created, id should be auto-generated when created in the database.
]
Тогда какого родазапроса следует отправить обратно на сервер, чтобы применить это изменение?Можно отправлять отдельный HTTP-запрос каждый раз, когда один элемент создается / обновляется / удаляется, но это, очевидно, неэффективно.Кроме того, я не уверен в согласованности списка, поскольку вновь созданные объекты не указывают идентификатор, в то время как существующие указывают.
Я смотрел на эту запись и другие, ноэто не отвечает на мой вопрос точно.Этот вид операции должен быть общей проблемой (за пределами DRF) во многих приложениях.