당신은 멋쟁이, 우리는 장고쟁이~

0%

TodoList 15편 - allauth 패키지 설치

allauth 패키지 설치


django 패키지중 하나인, allauth 를 사용하여,


기본 로그인, 로그아웃을 구현하고, 가능하면, 네이버 로그인 까지 구현해 볼까 합니다.


로그인, 로그아웃을 직접 구현하기 보다는,


아무래도 이런 편리한 패키지를 이용하여 소셜 로그인까지 구현이 가능해 보여서 사용해 보려 합니다.



순서는 아래와 같습니다.


  1. allauth 설치

  2. config/settings.py 파일 수정

    • TEMPLATES
    • AUTHENTICATION_BACKENDS
    • INSTALLED_APPS
    • SITE_ID
  3. config/urls.py 파일 수정

  4. python mange.py migrate

  5. 어드민에 접속해서 도메인을 위한 Site 추가


allauth 설치


1
pip install django-allauth

config/settings.py 파일 수정


  • AUTHENTICATION_BACKENDS
  • INSTALLED_APPS
  • SITE_ID

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
32
33
34
AUTHENTICATION_BACKENDS = (
# allauth 와 상관없이 username 으로 장고 어드민에 로그인이 필요할때
'django.contrib.auth.backends.ModelBackend',

# 'allauth' 특화 인증 방법, e-mail로 로그인 하는것 같은것
'allauth.account.auth_backends.AuthenticationBackend',
)

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',

'todo',
'django_extensions',

# Bulma CSS Framework
'bulma',

# Allauth를 위한 Apps
'django.contrib.sites',

'allauth',
'allauth.account',
'allauth.socialaccount',

# ... 소셜로그인을 할 제공자 리스트를 아래에 포함
# 'allauth.socialaccount.providers.naver'
]

SITE_ID = 1


config/urls.py 파일 수정


allauth 의 urls 들의 경로를 추가해줍니다.


1
2
3
4
5
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('todo.urls')),
path('accounts/', include('allauth.urls')),
]


python manage.py migrate


1
2
3
4
5
6
7
8
9
10
11
(to-do-list)  python manage.py migrate
Operations to perform:
Apply all migrations: account, admin, auth, contenttypes, sessions, sites, socialaccount, todo
Running migrations:
Applying account.0001_initial... OK
Applying account.0002_email_max_length... OK
Applying sites.0001_initial... OK
Applying sites.0002_alter_domain_unique... OK
Applying socialaccount.0001_initial... OK
Applying socialaccount.0002_token_max_lengths... OK
Applying socialaccount.0003_extra_data_default_dict... OK

어드민에 접속해서 설치 확인


설치후에, 어드민에 로그인하면,


아래와 같이 이전에는 볼수 없었던 메뉴들이 생겨납니다.