1
我有以下兩個Django模型(本例簡化)。Django Rest框架:在Viewset中嵌入Viewset
class Participant(models.Model):
name = models.CharField()
study_id = models.IntegerField()
...
# Lots of other fields
class Message(models.Model):
text = models.CharField()
participant = models.ForeignKey('Participant')
使用Django的REST框架我已成立了一個ModelSerializer
和ModelViewSet
每個模型。使用@detail_route
和@list_route
修飾器我已經設置了以下URL。
/api/participant/ (GET,POST for list and create)
/api/participant/:study_id (GET,PUT for retrieve and update)
/api/participant/:study_id/messages (GET for list POST to send message)
我想添加下面的URL來改變消息元數據。這將使在restangular
/api/participant/:study_id/messages/:msg_id (PATCH partial update of message)
與API工作更容易這將是不錯的方式嵌入Message
視圖集的Participant
內,因爲這會使邏輯GET和POST上簡單的消息,以及。這可能嗎?如果不是,我怎樣才能將消息的msg_id傳遞給@detail_rouet?
查看DRF嵌套路由器。 https://github.com/alanjds/drf-nested-routers –