How to limit access to views in Django? My Account model is like this:
class Account(AbstractBaseUser):
...
account_type = models.PositiveSmallIntegerField(default=0, choices=ACCOUNT_TYPE_CHOICES)
I want to use a custom decorator to all my views based on account type but I don't know where to start.
Currently on my views, this is what I have done:
@login_required(login_url='/login/')
def dashboard(request, *args, **kwargs):
if request.user.is_authenticated:
if request.user.account_type == 1:
return redirect('admin_page')
else:
....
But this one is very repetitive.