예제 #1
0
 def _get_role_permissions(self, user_obj):
     user_roles_field = get_user_model()._meta.get_field('roles')
     user_roles_query = 'role__%s' % user_roles_field.related_query_name()
     """
     20200724修改,加入status逻辑
     """
     return Permission.objects.filter(**{user_roles_query: user_obj, "status": 1, "role__status": 1})
예제 #2
0
파일: views.py 프로젝트: TomTsong/mandala
from mandala.auth.tokens import default_token_generator
from django.contrib.sites.shortcuts import get_current_site
from django.core.exceptions import ValidationError
from django.http import HttpResponseRedirect, QueryDict
from django.shortcuts import resolve_url
from django.urls import reverse_lazy
from django.utils.decorators import method_decorator
from django.utils.http import is_safe_url, urlsafe_base64_decode
from django.utils.translation import gettext_lazy as _
from django.views.decorators.cache import never_cache
from django.views.decorators.csrf import csrf_protect
from django.views.decorators.debug import sensitive_post_parameters
from django.views.generic.base import TemplateView
from django.views.generic.edit import FormView

UserModel = get_user_model()


class SuccessURLAllowedHostsMixin:
    success_url_allowed_hosts = set()

    def get_success_url_allowed_hosts(self):
        return {self.request.get_host(), *self.success_url_allowed_hosts}


class LoginView(SuccessURLAllowedHostsMixin, FormView):
    """
    Display the login form and handle the login action.
    """
    form_class = AuthenticationForm
    authentication_form = None