Предоставьте ваш ViewSet
в urls.py
:
router = routers.DefaultRouter()
router.register(r'pictures', PictureViewSet, base_name='picture')
urlpatterns = [
url(r'', include(router.urls)),
]
Отправьте PATCH
запрос с данными JSON, которые вы хотите обновить, до открытой конечной точки. Помните, что запросы PATCH отправляются в конечную точку экземпляра экземпляра, который вы хотите обновить, поэтому ваш URL будет выглядеть следующим образом: .../pictures/<picture_id>
.
{
"name": "updated_name"
}
Вам не нужна часть partial = True
.
Также, когда в вашем сериализаторе гораздо меньше исключенных полей, чем включенных полей, вы можете сделать:
class Meta:
model = Picture
exclude = ("printed", )