Django REST框架中不同API方法的基于角色的访问控制
我正在为产品创建RESTAPI,该产品具有以下权限:(创建产品、查看产品、编辑产品)。在我的项目中,我有不同角色的不同用户(例如:生产者、零售商、消费者等等)。我正在为各个角色分配权限。我正在使用Django组权限 示例:“生产者”角色具有“创建产品”和“查看产品”权限。“零售商”角色具有“编辑产品”权限。“使用者”角色没有权限 我想根据权限代码限制访问权限。我需要一个通用的方法来解决这个问题。我希望对具有不同权限代码的不同视图使用相同的方法 在我看来.pyDjango REST框架中不同API方法的基于角色的访问控制,django,python-3.x,django-rest-framework,Django,Python 3.x,Django Rest Framework,我正在为产品创建RESTAPI,该产品具有以下权限:(创建产品、查看产品、编辑产品)。在我的项目中,我有不同角色的不同用户(例如:生产者、零售商、消费者等等)。我正在为各个角色分配权限。我正在使用Django组权限 示例:“生产者”角色具有“创建产品”和“查看产品”权限。“零售商”角色具有“编辑产品”权限。“使用者”角色没有权限 我想根据权限代码限制访问权限。我需要一个通用的方法来解决这个问题。我希望对具有不同权限代码的不同视图使用相同的方法 在我看来.py class Product(view
class Product(viewsets.ModelViewSet):
serializer_class = ProductSerializer
queryset = Product.objects.all()
在settings.py中,我添加了以下代码
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
'rest_framework.authentication.BasicAuthentication',
'rest_framework.authentication.SessionAuthentication',
),
}
提前感谢。您可以使用django组权限我只使用django组权限,然后您可以在模型类metasee中使用权限=(“读取产品”,“可以读取产品”),)我也做了同样的事情,但我不知道如何使用django REST框架