use*_*508 5 django permissions django-rest-framework
我正在为文档应用程序创建基于类的API,但我想在APIView中为帖子和补丁定义添加特定权限.例如,
class DocumentList(APIView):
def get(self,request,format=None):
... blah
def post(self,request,format=None):
only allow administrators to create new documents
... blah
Run Code Online (Sandbox Code Playgroud)
默认情况下权限不受限制。在您的文件中,settings.py您可以指定一组不同的默认值,用户必须经过身份验证并拥有正确的 Django 模型权限。您需要model在视图类上指定一个属性才能DjangoModelPermissions生效。
# settings.py
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
'rest_framework.permissions.DjangoModelPermissions'
)
}
# views.py
class DocumentList(APIView):
model = Document
...
Run Code Online (Sandbox Code Playgroud)
权限DjangoModelPermissions映射可以在源代码中找到。
IsAuthenticated我们仍然需要权限| 归档时间: |
|
| 查看次数: |
7496 次 |
| 最近记录: |