介紹基本用法 SimpleRouter

可以為 ViewSet 類實現 DRF 的自動路由。

  1. 假設此示例中 ViewSet 類的名稱為 MyViewSet

  2. 為了生成 MyViewSet 的路由,將使用 SimpleRouter
    myapp/urls.py

    from rest_framework import routers
        
    router = routers.SimpleRouter()        # initialize the router.
    router.register(r'myview', MyViewSet)  # register MyViewSet to the router.
    
  3. 這將為 MyViewSet 生成以下 URL 模式:

    • ^myview/$,名稱為 myview-list
    • ^myview/{pk}/$,名稱為 myview-detail
  4. 最後,為了在 myapp 的 URL 模式中新增生成的模式,將使用 django 的 include()
    myapp/urls.py

    from django.conf.urls import url, include
    from rest_framework import routers
        
    router = routers.SimpleRouter()
    router.register(r'myview', MyViewSet)
        
    urlpatterns = [
        url(r'other/prefix/if/needed/', include(router.urls)),
    ]