목록장고 (12)
훈훈훈
# SECRET_KEY란 ? 장고(Django)에서 SECREET_KEY는 암호화 인증에 사용되는 비밀키이다. 이 값은 다른 프로젝트와는 다른 유일한 값으로 세팅되어야하며, 버전 컨트롤 시스템에서 제외되어야 한다. 만약 외부에 노출 시 보안 위협에 노출될 수 있기 떄문에 settings 파일에 저장하는 것이 아닌 외부에 따로 저장을 해야한다. 해당 키를 분리 방법으로는 환경 변수를 이용한 방법과 외부에 저장하는 방법이 있으며, 이번 장에서는 외부에 저장하는 방법을 소개하려고 한다. # secret.json 생성 { "FILENAME" : "secret.json", "SECRET_KEY" : "I'm secret !!", "DATABASES_HOST" : "127.0.0.1", "PORT" : "8080"..
Django(장고)를 이용해 회원가입과 로그인 기능을 가진 API를 구현해보았다. # 디렉터리 구조 아래 명령어를 사용하여 프로젝트(mysite)와 앱(account)을 생성하였다. > django-admin startproject mysite . > python manage.py startapp account # models.py from django.db import models class Account(models.Model): name = models.CharField(max_length = 50) password = models.CharField(max_length= 200) created_at = models.DateTimeField(auto_now_add=True) updated_at = m..
# 쿼리셋(QuerySet) ?? QuerySet 이란 데이터베이스에서 전달 받은 객체의 목록이다. (Django ORM에서 발생한 자료형) 리스트와 구조는 같지만 파이썬 기본 자료구조가 아니기 때문에 파이썬에서 읽고 쓰기 위해 자료형 변환(Casting)을 해줘야한다. 이제 아래와 같은 코드로 확인해보자. 위 코드는 request 요청으로 "name" 과 "password"를 전달받아 Json 형태로 반환해주는 코드이다. 필요한 모듈들은 Import 한 후 파이썬 쉘에서 확인해보자. ($ python manage.py shell) 현재 데이터베이스에 쌓인 값이 없기 때문에 [모델클래스].objects.create( )에 임의의 값을 저장하였다. 값을 저장 후 [모델클래스].objects.all( )와 ..
# 프로젝트와 애플리케이션 - 프로젝트 웹 사이트에 대한 전체 프로그램을 프로젝트(Project)라고 한다, - 애플리케이션 모듈화된 단위 프로그램을 애플리케이션이라고 한다. 즉, 애플리케이션 프로그램들이 모여 프로젝트를 구성하는 개념 # MVT 패턴 MVT 각 기능을 구분해서 한 요소가 다른 요소들에 영향을 주지 않도록 설계하는 방식이다. (MVC 패턴과 동일) - Model : 데이터베이스에 저장되는 데이터를 의미 - VIew : 실질적으로 프로그램 로직이 동작하여 데이터를 가져오고 처리한 결과를 Templete에 전달 - Template : 사용자에서 보여지는 UI 부분 일반적으로 REST API 를 생성할때는 Model과 View 영역만 작성한다. ** Client의 요청을 받고, Django에서..