Django 6

Django Custom Auth (로그인 인증, API 인증)

로그인 인증 시나리오사용자 계정은 외부의 인증 서버를 통해 인증한다.인증 성공하면 Django Session에 User 등록하고 Token 반환한다. 사용자 계정 인증 모듈외부 인증서버를 통해 username, password를 인증하는 custom 인증 모듈을 만듭니다.# -*- coding: utf-8 -*-from django.conf import settingsfrom django.contrib.auth import get_user_modelfrom cognitoidentityprovider.cognito_user import CognitoUser import requests User = get_user_model() class MyBackend(object): """ Return User ins..

Django 2017.01.24

Django Rest Framework 인증 관련 설정

Django 프로젝트의 settings.py에는 인증 관련 설정이 몇가지 있는데 각각 어떤 역할을 하는지 정리해보았습니다.AUTHENTICATION_BACKENDS로그인 시 username, password을 인증할 Backend를 정의합니다.Django의 authenticate 함수에 의해 호출됩니다.명시적으로 정의하지 않으면 기본값으로 아래의 설정이 적용됩니다.AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend',) Django로 로그인 기능을 만든다면 아래처럼 구현할 것입니다.authenticate 함수가 실행되면 ModelBackend를 사용하여 인증을 합니다.from django.contrib.auth import auth..

Django 2017.01.23

[DRF] prefetch_related와 SerializerMethodField

N:M 관계의 두 모델이 있다. Device 모델이 Group 모델에 대해 realted_name='devices'라고 정의하였기 때문에, Group Object는 'devices'라는 이름으로 관련된 Device 객체들에 접근할 수 있다. class Group(models.Model): name = models.CharField(max_length=32, null=True) class Device(models.Model): name = models.CharField(max_length=32, null=True) owner = models.ForeignKey(UserModel, on_delete=models.CASCADE) group = models.ManyToManyField(Group, related..

Django 2016.12.16

윈도우에서 django mysql 설정하기

MySQL-python 설치1. MySQL-python 패키지 다운로드https://pypi.python.org/pypi/MySQL-python 2. virtual environment 진입venv/Scripts/activate 3. easy-install을 사용하여 패키지 설치easy-install /path/to/MySQL-python-1.2.5.win32-py2.7.exe Mysql Table 생성CREATE DATABASE [dbname] CHARACTER SET utf8; Django 설정1. settings.pyDATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dbname', 'UESR': 'id', 'PASSW..

Django 2015.12.27