python - Django REST Framework - 使用 reverse() 时的 NoReverseMatch

标签 python django django-rest-framework

我一直在尝试使用 reverse() 函数返回一些 URL,但无论如何,我得到了一个 NoReverseMatch 异常:

Reverse for 'folder' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

为了排除故障,我创建了一些简化的代码,但它仍然无法正常工作。这是我的观点:

from rest_framework.response import Response
from rest_framework.reverse import reverse
from rest_framework.views import APIView

class Folder(APIView):
    def get(self, request, format=None):
        return Response({'url': reverse('folder', request=request)})

这是我的 URL 模式:

from django.conf.urls import url
from rest_framework.urlpatterns import format_suffix_patterns
from music import views

urlpatterns = format_suffix_patterns([
    url(r'^folder/$', views.Folder.as_view(), name='folder')])

最佳答案

你不应该通过请求:

{'url': reverse('folder')}

{'url': reverse('appname:folder')}

如果您使用 namespaced URLs

关于python - Django REST Framework - 使用 reverse() 时的 NoReverseMatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36843984/

相关文章:

javascript - 如何将 django 和 angularJS 运行到单个开发服务器中?

Python 空字典没有通过引用传递?

python - Django 休息框架 : Get detail view using a field other than primary key integer id

python - django_rest_framwork 发生 "TypeError: ' 链接对象不支持项目分配”

http - 如何在 AngularJS 中执行 HTTP 选项请求?

python - 无法使用 Django Rest Framework 序列化 AnonymousUser 对象 - 缺少属性

python - 根据多行将 Dataframe 拆分为多个部分

python - 如何让 Fabric 根据当前所在的网络使用不同的角色?

django - ModelForm 中外键的表单字段,ModelChoiceField 有太多选择?

python - Django 结构 : Many apps VS one large app