Skip to content

Commit a5f308e

Browse files
committed
Use DefautRouter instead of explicit URLConf
1 parent 147f329 commit a5f308e

File tree

2 files changed

+48
-33
lines changed

2 files changed

+48
-33
lines changed
-688 Bytes
Binary file not shown.

tutorial6/snippets/urls.py

+48-33
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,59 @@
1-
from django.urls import path
2-
from rest_framework.urlpatterns import format_suffix_patterns
1+
from django.urls import path, include
2+
from rest_framework.routers import DefaultRouter
33
from snippets import views
4-
from snippets.serializers import UserSerializer
5-
from rest_framework import renderers
6-
from snippets.views import SnippetViewSet, UserViewSet
74

8-
snippet_list = SnippetViewSet.as_view({
9-
'get': 'list',
10-
'post': 'create'
11-
})
5+
# Create a router and register our viewsets with it.
6+
router = DefaultRouter()
7+
router.register(r'snippets', views.SnippetViewSet)
8+
router.register(r'users', views.UserViewSet)
129

13-
snippet_detail = SnippetViewSet.as_view({
14-
'get': 'retrieve',
15-
'put': 'update',
16-
'patch': 'partial_update',
17-
'delete': 'destroy'
18-
})
10+
# The API URLs are now determined automatically by the router.
11+
urlpatterns = [
12+
path('', include(router.urls)),
13+
]
1914

20-
snippet_highlight = SnippetViewSet.as_view({
21-
'get': 'highlight'
22-
}, renderer_classes=[renderers.StaticHTMLRenderer])
2315

24-
user_list = UserViewSet.as_view({
25-
'get': 'list'
26-
})
2716

28-
user_detail = UserViewSet.as_view({
29-
'get': 'retrieve'
30-
})
17+
# from django.urls import path
18+
# from rest_framework.urlpatterns import format_suffix_patterns
19+
# from snippets import views
20+
# from snippets.serializers import UserSerializer
21+
# from rest_framework import renderers
22+
# from snippets.views import SnippetViewSet, UserViewSet
3123

24+
# snippet_list = SnippetViewSet.as_view({
25+
# 'get': 'list',
26+
# 'post': 'create'
27+
# })
28+
29+
# snippet_detail = SnippetViewSet.as_view({
30+
# 'get': 'retrieve',
31+
# 'put': 'update',
32+
# 'patch': 'partial_update',
33+
# 'delete': 'destroy'
34+
# })
35+
36+
# snippet_highlight = SnippetViewSet.as_view({
37+
# 'get': 'highlight'
38+
# }, renderer_classes=[renderers.StaticHTMLRenderer])
39+
40+
# user_list = UserViewSet.as_view({
41+
# 'get': 'list'
42+
# })
43+
44+
# user_detail = UserViewSet.as_view({
45+
# 'get': 'retrieve'
46+
# })
3247

3348

34-
urlpatterns = [
35-
path('', views.api_root),
36-
path('snippets/', snippet_list, name='snippet-list'), # When we use class-based view, we need to call as_view() to get the view form class
37-
path('snippets/<int:pk>/', snippet_detail, name='snippet-detail'),
38-
path('snippets/<int:pk>/highlight/', snippet_highlight, name='snippet-highlight'),
39-
path('users/', user_list, name='user-list'),
40-
path('users/<int:pk>/', user_detail, name='user-detail'),
41-
]
4249

50+
# urlpatterns = [
51+
# path('', views.api_root),
52+
# path('snippets/', snippet_list, name='snippet-list'), # When we use class-based view, we need to call as_view() to get the view form class
53+
# path('snippets/<int:pk>/', snippet_detail, name='snippet-detail'),
54+
# path('snippets/<int:pk>/highlight/', snippet_highlight, name='snippet-highlight'),
55+
# path('users/', user_list, name='user-list'),
56+
# path('users/<int:pk>/', user_detail, name='user-detail'),
57+
# ]
4358

44-
urlpatterns = format_suffix_patterns(urlpatterns)
59+
# urlpatterns = format_suffix_patterns(urlpatterns)

0 commit comments

Comments
 (0)