IT Curation 자세히보기

프로그래밍 학습/Python-Django 3.2

django | 로그인 시 계정 유무 확인 기능 구현

icf_ 2023. 6. 1. 23:56

django에 있는 기능을 일부 커스텀해서 구현하는 방법 입니다.

LoginView의 get_context_data부분을 수정하여 백엔드 구현 후 템플릿으로 쏘는 방법으로 구현해보았습니다.

def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        # -- 내가작성 --
        try:
            user_name = self.request.POST['username']
        except:
            user_name="none"
            print(user_name)
        User = get_user_model()
        # users = User.objects.all().values_list("user")
        user = list(User.objects.all().values_list("username", flat=True))
        context['users']= user
        if user_name == 'none':
            context['account_exist'] = "none"
        else:
            if user_name in user:
                print("true")
                context['account_exist'] = "true"
            else:
                print("false")
                context['account_exist'] = "false"
        print(context['account_exist'])
        # ---
        current_site = get_current_site(self.request)
        context.update({
            self.redirect_field_name: self.get_redirect_url(),
            'site': current_site,
            'site_name': current_site.name,
            **(self.extra_context or {})
        })
        return context
728x90

'프로그래밍 학습 > Python-Django 3.2' 카테고리의 다른 글

django | block 상속  (0) 2023.11.09
django | django shell  (0) 2023.10.07
예제 | user 리스트 가져오기  (0) 2023.05.29
예제 | Function Based View  (0) 2023.05.29
django | summernote 적용  (0) 2023.02.05