일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인하멘토링
- 봉사활동
- 2019회고
- 쇠막대기
- 타코트론
- 놀이동산의슈퍼컴퓨터를작동시켜라
- CrossAngle
- 서구동구예비군훈련장
- tacotron
- Xangle
- 서버로그
- 나는리뷰어다
- 노트북덮개
- 인하대학교
- 개발자회고
- 프로그래머스
- jaypark.dating
- 결과를얻는법
- texttospeech
- 로그남기기
- 심플소프트웨어
- 개발자를위한파이썬
- 프로그라피
- graphicdriver
- machinelearning
- 우분투비트확인
- 한빛미디어
- 인천남중
- 신영준
- intell
- Today
- Total
목록Django (30)
jc.jang
주제 회원가입 시에 프로필 정보 받기 노트 회원가입 시 프로필은 만드는데, 프로필 정보도 받도록 수정해보자. accounts/forms.py에서 정의한 SignupForm을 재정의한 적이 있다. form은 기본적으로 하나의 모델에만 적용이 가능하다. 따라서 bio, website_url 정보를 받아오고 user save할 때 profile을 저장하자. accounts/forms.py from django import forms from django.contrib.auth.forms import UserCreationForm from django.contrib.auth.models import User from django.core.validators import validate_email from .mo..
주제 프로필 수정 구현 노트 프로필 수정 기능을 구현한다. class based view는 강의에서 다뤘으므로 나는 function based view로 작성해봤다. accounts/urls.py from django.urls import path, reverse_lazy from django.contrib.auth import views as auth_views from . import views urlpatterns = [ # ... path('profile/edit/', views.profile_edit, name='profile_edit'), # ... ] 프로필 수정 url 등록 accounts/forms.py class ProfileForm(forms.ModelForm): class Meta:..
주제 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..