register.html의 코드를 복사하여 login.html에 붙여넣기!
views.py에 연결하기!
urls.py에 연결하기!
웹에 들어가보기!
from django.shortcuts import render
from .models import Fcuser
# make_password 말고도 check_password도 있다
from django.contrib.auth.hashers import make_password, check_password
# Create your views here.
def login(request):
if request.method == 'GET':
return render(request, 'login.html')
elif request.method == 'POST':
username = request.POST.get('username', '')
password = request.POST.get('password', '')
res_data = {}
if not(username and password):
res_data['error'] = '모든 값을 입력해야 합니다'
else:
# (db에 저장되어 있는 username = post로 받아온 username)
# db에 데이터가 있으면 fcuser에 할당 된다
fcuser = Fcuser.objects.get(username=username)
if check_password(password, fcuser.password):
# 비밀번호가 일치, 로그인 처리를!
# 세션!
# redirect
pass
else:
res_data['error'] = '비밀번호를 틀렸습니다!'
return render(request, 'login.html', res_data)
def register(request):
if request.method == 'GET':
return render(request, 'register.html')
elif request.method == 'POST':
username = request.POST.get('username', '')
useremail = request.POST.get('useremail', '')
password = request.POST.get('password', '')
re_password = request.POST.get('re-password', '')
res_data = {}
if not (username and password and re_password and useremail):
res_data['error'] = '모든 값을 입력해야 합니다.'
elif password != re_password:
res_data['error'] = '비밀번호가 다릅니다.'
else:
fcuser = Fcuser(
username=username,
useremail=useremail,
password=make_password(password)
)
fcuser.save()
return render(request, 'register.html', res_data)
# 기본적으로 template폴더를 보기에 바로 작성 가능
# 만약에 template폴더 내부에 폴더를 생성한 다음에 파일을 만든다면
# foldername/register.html
# return render(request, 'register.html')
root 폴더 안에 있는 urls.py에 경로 설정
views.py에 home 생성
로그인 성공하면 이동
user 정보가 제대로 저장되었는지 확인