공부
[Django] 로그인 Python, HTML, DB(SQLite)
김짐인
2020. 8. 22. 15:14
1. templete/signin.html
{% extends 'base.html' %}
{% block content %}
<div class="jumbotron">
<div class="container text-center">
<form method="post" action="/signin/">
{% csrf_token %}
<div class="form-group">
<label for="email">Email:</label>
<input type="text" class="form-control" id="email" name="email">
</div>
<div class="form-group">
<label for="pwd">Password:</label>
<input type="password" class="form-control" id="pwd" name="pwd">
</div>
<button class="btn btn-primary btn-block" id="signin">Sign in</button>
</form>
</div>
</div>
{% endblock %}
2. templete/signin_success.html (성공 시)
{% extends 'base.html' %}
{% block content %}
<div class="jumbotron">
<div class="container text-center">
<h1>로그인되었습니다.</h1>
</div>
</div>
{% endblock %}
3. templete/signin_fail.html (실패 시)
{% extends 'base.html' %}
{% block content %}
<div class="jumbotron">
<div class="container text-center">
<h1>이메일과 비밀번호를 확인해주세요.</h1>
</div>
</div>
{% endblock %}
4. board/view.py
def signin(request):
if request.method == 'POST': # 회원정보 조회
email = request.POST.get('email')
pwd = request.POST.get('pwd')
try: # select * from user where email=? and pwd=?
user = User.objects.get(email=email, pwd=pwd)
return render(request, 'signin_success.html')
except:
return render(request, 'signin_fail.html')
return render(request, 'signin.html')
5. board/urls.py
path('signin/', views.signin), #추가