我正在阅读一长段代码。并停留在路由器和视图集如何自动配置其URL上。 例如。 views.py文件为:
if (data)
{
let lastEpisode = data.items[data.items.length - 1];
this.episodes.push(lastEpisode);
...
}
与路由器对应的网址是:
class UserViewSet(viewsets.ModelViewSet):
authentication_classes = (BasicAuthentication,SessionAuthentication)
permission_classes = (IsAuthenticated,)
serializer_class = UserSerializer
queryset = User.objects.all()
在上述情况下,视图集中不同动作的相应URL是什么,例如,视图集djangorestframework文档中提到的列表,创建,检索,更新,partial_update和销毁:http://www.tomchristie.com/rest-framework-2-docs/api-guide/viewsets
答案 0 :(得分:0)
注册视图集时,将为上述情况生成以下网址格式。
router.register(prefix='users', viewset=views.UserViewSet, basename='user')
它遵循以下正则表达式模式
# Regex for list
r'^{prefix}{trailing_slash}$'
# Regex for detail
r'^{prefix}/{lookup}{trailing_slash}$'
1。列表路由器允许http
之类的get
方法来检索资源,而post
则可以创建资源。
2.细节路由器允许http
之类的get
方法来检索资源数据,put
以更新资源数据,patch
以部分更新资源,{ {1}}删除资源。
我们还可以在使用delete
生成动态网址时传递一个额外的关键字参数format
。
reverse
参考:https://github.com/encode/django-rest-framework/blob/master/rest_framework/routers.py