I am using Django user_passes_test decorator to check the User Permission.
@user_passes_test(lambda u: has_add_permission(u, \"project\"))
def create_project
Note that Django 1.9 introduced UserPassesTestMixin, which uses a method test_func
as test function. This means the request is available in self.request
. So you can do something like that:
class MyView(UserPassesTestMixin, View):
def test_func(self):
return has_add_permission(self.request.user, self.request)
This only works with class-based views however.