일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 인하대학교
- 프로그래머스
- 인하멘토링
- graphicdriver
- 개발자를위한파이썬
- Xangle
- 프로그라피
- 신영준
- 우분투비트확인
- jaypark.dating
- texttospeech
- 로그남기기
- 노트북덮개
- 개발자회고
- CrossAngle
- 타코트론
- 놀이동산의슈퍼컴퓨터를작동시켜라
- 심플소프트웨어
- 인천남중
- 2019회고
- 쇠막대기
- 나는리뷰어다
- 결과를얻는법
- 서버로그
- intell
- tacotron
- 한빛미디어
- 봉사활동
- 서구동구예비군훈련장
- Today
- Total
목록내 블로그 (206)
jc.jang
주제 SignupForm에 Meta.model 적용하기 노트 settings.py에 AUTH_USER_MODEL = 'accounts.User'를 설정했다. 회원가입을 시도해보면 에러가 발생한다. accounts/forms.py from django.contrib.auth.forms import UserCreationForm class SignupForm(UserCreationForm): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['username'].validators = [validate_email] self.fields['username'].help_text = '이메일 형식을 입력하세요.' s..
주제 session을 이용해 중복 로그인을 막는다. 중복 로그인 시 middleware message로 사용자에게 알림 메시지를 노출한다. 노트 한 사용자가 A 브라우저에서 로그인 -> B 브라우저에서 로그인한 경우, A 브라우저의 세션을 종료 시킨다. django/contrib/auth/__init__(링크) 에서 보면 login 메소드는 로그인이 성공적으로 실행됐을 때, user_logged_in 시그널을 호출하는 것을 알 수 있다. django/django The Web framework for perfectionists with deadlines. - django/django github.com 그렇다면 로그인 성공 시 user_logged_in 시그널을 호출하고 커스텀 리시버를 설정하여 기존에 ..
주제 Permission 시스템을 통한 사용자 접근 제한하기 노트 특정 User/Group에 Permission을 할당할 수 있다. admin 페이지에 각 User/Group 별로 Permission 할당 UI가 제공된다. 모델별로 퍼미션 지정이 가능하다. 디폴트 퍼미션 제공: 추가, 수정, 삭제 admin 페이지에서 유저 클릭 후 권한 탭에서 사용자 권한을 확인, 부여할 수 있다. 사용자 권한을 부여하는 것과 별개로, 뷰에서 관련 로직을 따로 처리해줘야한다. 예를 들어, A라는 사용자에게 'can delete post' 권한을 준다고해서 post를 삭제할 수 있는건 아님 실제 상황에서 어떻게 쓰이는지 알아보자. 미션 - 로그인 여부를 먼저 검증하고, 로그인 유저가 GoldUser가 아닐 경우 등급 업그..
주제 User Admin을 커스텀한다. 자주사용하는 list_display, list_filter, actions 필드를 재정의한다. 노트 지난 포스팅 14강 커스텀 User Model 만들기 중 세번째 방법으로 AbstractUser 모델 상속을 이용해 성별 필드를 추가했다. 지금은 장고의 기본 데이터베이스 엔진인 sqlite3를 사용하고 있어서 에러가 발생하지 않지만, 다른 엔진이라면 성별의 초기값이 없어서 에러가 발생한다. 따라서 다음과 같이 UserManager 클래스를 재정의해야한다. accounts/models.py class UserManager(AuthUserManager): def create_superuser(self, username, email, password, **extra_fi..
주제 커스텀 User Model 만들기 다양한 방법으로 User Model을 커스텀 할 수 있다. 노트 예전에 프로젝트를 진행하다 필요에 의해 찾아본 적이 있다. 여러가지 방법이 있다. 프로젝트 시작 전에, 적용 여부가 필요한 것도 있고 프로젝트 진행 중에 적용 가능한 것도 있다. settings.AUTH_USER_MODEL 설정 값을 변경하여 기본 사용자 모델을 재정의 할 수 있다. User를 확장하는 4가지 방법에 대해 알아보자. 첫번째, auth.User 모델과 1:1 관계에 있는 별도 모델 만들기 이전 강의에서 Profile 모델을 만들고 OneToOneField로 User를 연결하는 것 처럼 새로운 모델을 만들면 된다. 마이그레이션 과정이 필요함 두번째, Proxy User 모델: 제한적인방법 ..
주제 암호 재설정 구현하기 지난 강의 2019/09/03 - [프로그래밍/Django] - 12강 암호 변경 구현하기와 비슷하게 auth 기본앱을 최대한 활용하여 암호 재설정을 구현한다. 노트 이번에도 urls.py 등록, views.py 구현으로 지난 강의와 내용이 같다. views.py에서 관련 class based view의 template_name를 지정하지 않으면 admin style의 html이 나오므로 수정이 필요하다. 마찬가지로 PasswordResetDoneView, PaswordResetCompleteView는 완료 메세지만 보여줄 뿐 다른 기능이 없으므로 이전 view의 success_url을 재정의하여 login 페이지로 이동한다. accounts/urls.py from django..