如何修复Django rest框架路由器中的NoReverseMatch异常?
我正在进行Django学习项目,无法使用reverse()解析URL 我试图从在线文档中理解这个概念,但我没能成功 我正在我的views.py中使用如何修复Django rest框架路由器中的NoReverseMatch异常?,django,routes,django-rest-framework,django-views,django-rest-viewsets,Django,Routes,Django Rest Framework,Django Views,Django Rest Viewsets,我正在进行Django学习项目,无法使用reverse()解析URL 我试图从在线文档中理解这个概念,但我没能成功 我正在我的views.py中使用ModelViewSet 在我的测试中.py POSTS_URL = reverse('posts:posts-list') 这是我发布的URL.py(即应用程序) 这是我在根目录下的url.py urlpatterns = [ path('admin/', admin.site.urls), path('api/posts/', include(
ModelViewSet
在我的测试中.py
POSTS_URL = reverse('posts:posts-list')
这是我发布的URL.py(即应用程序)
这是我在根目录下的url.py
urlpatterns = [
path('admin/', admin.site.urls),
path('api/posts/', include('posts.urls')),
path('docs/', include_docs_urls(title='My API title')),
]
这就是我得到的错误
django.urls.exceptions.NoReverseMatch: Reverse for 'posts-list' not found. 'posts-list' is not a valid view function or patternname.
还有人可以建议一个好地方来正确理解reverse()和路由器是如何协同工作的。在你的
URL中。py
app\u name
似乎没有被使用,每个默认值(单数),因此reverse(“post list”)
应该可以工作
如果你想给你的URL命名,你应该做一些类似于path('api/posts/',include('posts.url','posts'))
的事情,然后reverse('posts:post list')
应该可以工作。reverse(“post list”)
也引发了同样的异常:(
django.urls.exceptions.NoReverseMatch: Reverse for 'posts-list' not found. 'posts-list' is not a valid view function or patternname.