当前位置: 首页>>代码示例>>Python>>正文


Python mixins.UserPassesTestMixin方法代码示例

本文整理汇总了Python中django.contrib.auth.mixins.UserPassesTestMixin方法的典型用法代码示例。如果您正苦于以下问题:Python mixins.UserPassesTestMixin方法的具体用法?Python mixins.UserPassesTestMixin怎么用?Python mixins.UserPassesTestMixin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在django.contrib.auth.mixins的用法示例。


在下文中一共展示了mixins.UserPassesTestMixin方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_func

# 需要导入模块: from django.contrib.auth import mixins [as 别名]
# 或者: from django.contrib.auth.mixins import UserPassesTestMixin [as 别名]
def test_func(self):
        """ UserPassesTestMixin Tests"""
        if self.request.user.is_superuser:
            return True

        if self.request.user.has_perm('project.can_view_all_projects'):
            return True

        project_obj = self.get_object()

        if project_obj.projectuser_set.filter(user=self.request.user, status__name='Active').exists():
            return True

        messages.error(
            self.request, 'You do not have permission to view the previous page.')
        return False 
开发者ID:ubccr,项目名称:coldfront,代码行数:18,代码来源:views.py

示例2: test_func

# 需要导入模块: from django.contrib.auth import mixins [as 别名]
# 或者: from django.contrib.auth.mixins import UserPassesTestMixin [as 别名]
def test_func(self):
        """ UserPassesTestMixin Tests"""
        if self.request.user.is_superuser:
            return True

        if self.request.user.has_perm('allocation.can_view_all_allocations'):
            return True

        pk = self.kwargs.get('pk')
        allocation_obj = get_object_or_404(Allocation, pk=pk)

        user_can_access_project = allocation_obj.project.projectuser_set.filter(
            user=self.request.user, status__name__in=['Active', 'New', ]).exists()

        user_can_access_allocation = allocation_obj.allocationuser_set.filter(
            user=self.request.user, status__name__in=['Active', ]).exists()

        if user_can_access_project and user_can_access_allocation:
            return True

        return False 
开发者ID:ubccr,项目名称:coldfront,代码行数:23,代码来源:views.py

示例3: test_func

# 需要导入模块: from django.contrib.auth import mixins [as 别名]
# 或者: from django.contrib.auth.mixins import UserPassesTestMixin [as 别名]
def test_func(self):
        """ UserPassesTestMixin Tests"""
        if self.request.user.is_superuser:
            return True

        project_obj = get_object_or_404(
            Project, pk=self.kwargs.get('project_pk'))

        if project_obj.pi == self.request.user:
            return True

        if project_obj.projectuser_set.filter(user=self.request.user, role__name='Manager', status__name='Active').exists():
            return True 
开发者ID:ubccr,项目名称:coldfront,代码行数:15,代码来源:views.py

示例4: test_func

# 需要导入模块: from django.contrib.auth import mixins [as 别名]
# 或者: from django.contrib.auth.mixins import UserPassesTestMixin [as 别名]
def test_func(self):
        """ UserPassesTestMixin Tests"""
        if self.request.user.is_superuser:
            return True

        project_obj = get_object_or_404(Project, pk=self.kwargs.get('project_pk'))

        if project_obj.pi == self.request.user:
            return True

        if project_obj.projectuser_set.filter(user=self.request.user, role__name='Manager', status__name='Active').exists():
            return True

        messages.error(self.request, 'You do not have permission to add a new grant to this project.') 
开发者ID:ubccr,项目名称:coldfront,代码行数:16,代码来源:views.py


注:本文中的django.contrib.auth.mixins.UserPassesTestMixin方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。