我有一个评论,它有一个文章外键(所以文章有一个“数组”的评论)。我需要建立一个网址来获取这些评论使用文章的pk,但当我试图做smth像“articles/int:article_pk/comments/”或“articles/{article_pk}/comments/”drf路由器创建静态路由与路径“articles/{article_pk}/comments/"。我如何实现获得评论使用文章pk?
urls.py
router = DefaultRouter()
router.register('articles', articleAPI.ArticleAPI, basename='articles')
router.register('articles/comments', CommentAPI, basename='comments')
3条答案
按热度按时间nbysray51#
您也可以使用此相同的url来获取评论。
router.register('articles', articleAPI.ArticleAPI, basename='articles')
将新方法添加到
Article
ModelViewSet在postman中,使用GET方法点击url
articles/<article_id>/comments/
以获取评论列表nqwrtyyt2#
它不起作用,因为路由器不是这样使用的。注册时不要指定密钥,而是使用视图集来定义它。请阅读[1]中的文档。[1]:https://www.django-rest-framework.org/api-guide/routers/#simplerouter
iovurdzv3#
路由器确实不能做到这一点。您需要在
path
中捕获article_pk
,然后使用两个路由器,因此: