이번시간에는 로그인을 하고 Main Page로 이동하는 그런 무지막지한 작업을 해볼것이다
일단 login Page부터 시작하겠다
이전에는 여기까지 작성을 하였으나... 조금 수정할 부분이 있다
조금 조사해서 찾아보니, action= 의 url설정이 장고만의 필살기가 있었다
{% url 'main' %} 를 넣어주기 ( 여기서 'main'은 urls.py의 name='main' 과 같다 )
그리고 csrf_token 도 추가해준다
그리고 우리는 main 페이지가 없으니 한번 만들어 보도록 하자
위의 {{ memberId }} 는 로그인 했냐 안했냐 검증하기위해 적어 놓겠다
그리고 main Page로 갈 수 있도록 urls.py에서 path를 정해준다
그다음 views.py 의 main함수를 만들어 보자
이번엔 조금 어려울 것이다..
로그인을 할때 POST로 전송하면 if 를 타게 된다
전송된 memberName과 password로 SELECT를 하게 된다
아래의 Django의 코드는 ( 솔직히 밑에 코드 외우기 빡세다 )
member = Member.objects.get(memberName=memberName, password=password)
아래 SQL의 쿼리와 같다
SELECT * FROM member WHERE memberName = ? AND password = ?
if member is not None: 은 SELECT했을때 member가 있냐 없냐를 판단하여 없을경우는 다시 login 페이지를 부르고
member 오브젝트가 있다면 세션에 유니크한 id를 담고, main.html를 부르며, memberId에 값을 넣어준다
세션에 id를 담는 이뉴는 누가 로그인을 했는지 알아야하고, 게시글도 적기때문에 누가 적었는지 확인하기 위해 담는다
한번 로그인을 해보자
아래의 화면이 로그인에 성공한 모습이다
【test】 부분은 위의 html 코드의 {{ memberId }} 이다
이제 로그인에 성공했으니 다음시간은 대망의 CRUD를 할 것이다
일단.. C ( create ) 부터 하겠다
'Web Programming > Django' 카테고리의 다른 글
8강) Django 게시판 조회하기 ( Read ) (0) | 2021.01.16 |
---|---|
7강) Django 게시판 등록하기 ( Create ) (0) | 2021.01.15 |
5강) Django 회원가입하기, 또는 회원등록하기 (4) | 2021.01.15 |
4강) Django 회원가입 페이지 만들기 (0) | 2021.01.15 |
3강) Django Form 생성하기 ( Login Page ) (0) | 2021.01.15 |