login구현

정현석·2020년 11월 8일
0
app/ulrs.py

from django.urls  import path
from user.views       import SignUpView, LogInView
					#LogInView import

urlpatterns =  [
    path ('', SignUpView.as_view()),
    path ('/login' , LogInView.as_view()),
    # lonin path 추가 


class LogInView(View):
    def post(self, request):
        login_data = json.loads(request.body)

        User (
            user_name     = login_data["name"],
            user_password = login_data["password"],
            # 두가지만 가지고 로그인 가능
#                user_email    = login_data["email"] ,
#                user_phone_number = login_data["phone_number"] ,
        )
        if User.objects.filter(
            user_name = login_data["name"],
            user_password =login_data["password"]).exists():
            return JsonResponse ({"message : " : " 로그인 성공"} , status = 200)
            # name, password 입력 후 동일하면 로그인
        elif User.objects.filter(user_name = login_data["name"]).exist == False:
            return JsonResponse (
                {"message : " : "존재하지 않는 아이디입니다"} ,
                status = 401 )
                # POST로 받은 data에 name이 존재하지않을 경우 == False , 존재하지 않는 아이디 반환
        elif User.objects.filter(
            user_password = login_data["password"]).exist==False :
            return JsonResponse (
                {"message  : ":  "비밀번호가 다릅니다"}, status = 401)
                # data에 password가 다르거나 없는 경우 ==False, 비밀번호가 다릅니다. 반환
    
  #### 굳이 get이 필요한가..??  
    def get(self, request):
        results = []
        for users in User.objects.all() :
     
            results.append(User.objects.values())
        return JsonResponse ({ "data : ": results },status = 200)
#        except  :
#            return JsonResponse({ "message : " : "ERROR"} , status = 200)
profile
기록하는 벨로그

0개의 댓글