DJango에서는 로그인 로그아웃 회원가입 기능을 제공하기에 나름(?) 손쉽게 할수 있다. (물론 나처럼 장고로 뭘 처음만든다면 쉽지만은 않다)
지난글에서 로그인과 회원가입을 구현했기에 이번 글에서는 내가 만들면서 실수한 점을 기록해보려한다.
createsuperuser를 통한 로그인은 잘된다!
하지만 내 홈페이지에서 회원가입을 통한 로그인은 되지 않았다.
DB를 보아도 잘 입력되어있었다. 그렇다면 회원가입 또는 로그인 로직에서 문제가 있다는것인데,
(테스트를 위한 사이트이니 발퀄이어도 이해바랍니다ㅠ)
view에서 작성한 해당 코드다
Member.objects.create(account_id=account_id, password=password, name=name, email=email, nickname=nickname,phone_number=phone_number)
request를 post받아서 저장할 객체(데이터)는 일반적으로 create쓰는것이 맞다. 하지만 장고가 지원하는 authenticate와 auth.login,logout 기능을 이용하기 위해서는 Model명.objects.creatuser를 이용해서
일반 객체와 구분되는 user객체를 만들어야한다
Member.objects.create -> Member.objects.creat_user
그리고 확인 방법은 DB에 저장된 비밀번호가 salt값으로 알아서 저장될것이다. DB에도 비밀번호가 저장되어있어서는 안된다.