일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 개발자를위한파이썬
- 쇠막대기
- 나는리뷰어다
- 프로그라피
- 인하대학교
- 봉사활동
- 결과를얻는법
- machinelearning
- CrossAngle
- 신영준
- 인하멘토링
- 인천남중
- texttospeech
- 놀이동산의슈퍼컴퓨터를작동시켜라
- graphicdriver
- Xangle
- 서버로그
- 타코트론
- 2019회고
- 로그남기기
- jaypark.dating
- 서구동구예비군훈련장
- 개발자회고
- intell
- 한빛미디어
- 프로그래머스
- 우분투비트확인
- 노트북덮개
- 심플소프트웨어
- tacotron
- Today
- Total
목록Django/Django - 인증편 (19)
jc.jang
주제 로그인 아이디로 이메일을 사용한다. 노트 AbstractUser 유저 모델 클래스에서 username필드를 아이디로 사용한다. 그리고 여기 있는 email은 필수 값이 아닌 필드이므로 email필드로 로그인하는 것이 아니라 username필드에 test123@gmail.com같은 값을 입력하여 로그인하는 것이다. username에 이메일 값을 입력해도 되지만, 해당 필드의 유효성 검사를 UnicodeUsernameValidator에서 한다. 올바르지 않은 이메일 값도 회원가입이 가능하다. 정확한 유효성 검사 로직을 작성해보자. 이 작업은 반드시 뷰가 아니라 폼에서 작성해야 함 accounts/forms.py from django.contrib.auth.forms import UserCreationF..
주제 회원가입 시 next 인자 처리하기 로그인, 로그아웃 시 next 인자를 통해 이동할 페이지를 설정할 수 있다. 노트 next인자가 있으면 그 곳으로 이동, 없으면 profile로 이동 accounts/views.py def signup(request): if request.method == "POST": form = SignupForm(request.POST) if form.is_valid(): user = form.save() auth_login(request, user) next_url = request.GET.get('next') or 'profile' return redirect(next_url) else: form = SignupForm() return render(request, 'ac..
주제 회원가입과 동시에 로그인하기 노트 회원가입 후 로그인하는 행위는 아이디/비밀번호 입력이 중복된다. 회원가입과 동시에 로그인을 해주면 편하다. django/contrib/auth/views.py - LoginView class가 있다. form_valid 메소드에서 auth_login을 사용한다. django/contrib/auth/__init__.py - logon method가 있다. 이를 이용해 회원가입과 동시에 로그인을 해보자. accounts/views.py from django.contrib.auth import login as auth_login def signup(request): if request.method == "POST": form = SignupForm(request.POST..
주제 가입과 동시에 Profile만들기 노트 accounts앱에 Profile 모델을 만들고 User와 연결한다. 기존 User의 Profile을 생성하고 신규 User 가입 시 가입과 동시에 Profile을 만들어주자. accounts/models.py from django.db import models from django.conf import settings class Profile(models.Model): user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) bio = models.TextField(blank=True) website_url = models.URLField(blank=True) 장고의 유저 ..
주제 회원가입 노트 django.contrib.auth.forms에 UserCreationForm을 이용해 회원가입을 구현한다. urls.py에 회원가입 url을 등록한다. UserCreationForm을 임포트하여 입력 받은 데이터로 회원 가입을한다. accounts/templates/accounts/signup.html을 구현한다. 위의 과정이 가장 기본적인 방법이다. 만약 회원가입 시 email을 추가로 입력받고 싶다면 UserCreationForm을 forms.py에서 상속 받아 재정의해서 사용하면 편하다. accounts/urls.py from django.urls import path from django.contrib.auth import views as auth_views from . im..
주제 로그아웃 구현하기 노트 django/contrib/auth/views.py의 LogoutView를 사용하여 로그아웃을 구현할 수 있다. accounts/urls.py from django.urls import path from django.contrib.auth import views as auth_views from . import views urlpatterns = [ ... path('logout/', auth_views.LogoutView.as_view(), name='logout'), ... ] accounts/layout.html jc jang blog {% if user.is_authenticated %} {{ user }} 로그아웃 {% else %} 회원가입 로그인 {% endif ..