Le *_*ang 4 django mongoengine django-rest-framework
我正在尝试使MongoEngine与Django REST框架一起使用。通过单击此链接使mongoengine和django rest框架正常运行,我设法使所有工作正常进行,但必须在REST框架中禁用“ PERMISSION CLASSES”,如下所示
'DEFAULT_PERMISSION_CLASSES': [
#'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
]
否则,我得到这个错误“无法对不具备视图下应用DjangoModelPermissions .model或.queryset财产。” 原因似乎是从“ Collection.objects”或“ Collection.objects.all()”返回的值无法通过REST框架中的Permission.py中的“ has_permission”函数传递。
有人可以帮忙看看吗?
小智 5
在您的views.py中导入以下模型:
from rest_framework.permissions import AllowAny
from rest_framework.decorators import api_view, permission_classes
Run Code Online (Sandbox Code Playgroud)
在声明函数(视图函数)之前添加:
@api_view(['GET', 'POST'])
@permission_classes((AllowAny, ))
Run Code Online (Sandbox Code Playgroud)
或者
@api_view(['GET', 'PUT', 'DELETE'])
@permission_classes((AllowAny, ))
Run Code Online (Sandbox Code Playgroud)
小智 5
或者,您可以添加:
from rest_framework import permissions
Run Code Online (Sandbox Code Playgroud)
并在视图类中添加
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1786 次 |
| 最近记录: |