未在 django rest url 中注册的视图
Views not registered in django rest urls
为什么我的观点没有在 url 中注册?
这是我的查看代码,
class AView(APIView):
def get(self, request, format=None):
return Response(apps.get_models())
这是我的 url 代码
from a_module import views
from .views import *
from rest_framework_nested import routers
app_name = 'a_module'
router = routers.DefaultRouter()
router.register(r'endpoint', views.AView, base_name="endpoint")
urlpatterns = [
url(r'^', include(router.urls)),
]
a_module 中还有其他视图已在 url 中注册,但唯一未注册的视图是 AView,我尝试使用 views.AView.as_view() 进行注册,但它不起作用也。当我通过 /endpoint
访问视图时,它 returns 未找到。
由于您的视图 class 没有继承自 Viewsets
,因此您不能使用 router
here.
因此,删除那些部分并直接在 urls()
函数中使用 [= 提及视图 class 13=]如下,
from a_module import views
from .views import *
app_name = 'a_module'
urlpatterns = [
<b>url(r'endpoint/', views.AView.as_view(),name='endpoint'),</b>
]
为什么我的观点没有在 url 中注册?
这是我的查看代码,
class AView(APIView):
def get(self, request, format=None):
return Response(apps.get_models())
这是我的 url 代码
from a_module import views
from .views import *
from rest_framework_nested import routers
app_name = 'a_module'
router = routers.DefaultRouter()
router.register(r'endpoint', views.AView, base_name="endpoint")
urlpatterns = [
url(r'^', include(router.urls)),
]
a_module 中还有其他视图已在 url 中注册,但唯一未注册的视图是 AView,我尝试使用 views.AView.as_view() 进行注册,但它不起作用也。当我通过 /endpoint
访问视图时,它 returns 未找到。
由于您的视图 class 没有继承自 Viewsets
,因此您不能使用 router
here.
因此,删除那些部分并直接在 urls()
函数中使用 [= 提及视图 class 13=]如下,
from a_module import views
from .views import *
app_name = 'a_module'
urlpatterns = [
<b>url(r'endpoint/', views.AView.as_view(),name='endpoint'),</b>
]