1. C:\djangogirls\myvenv\Scripts\activate
2. django-admin startproject mysite .[경로] # 프로젝트 생성
-manage.py
- 스크립트인데 사이트 관리를 도와주는 역할을 한다. 이 스크립트로 다른 설치 작업 없이, 컴퓨터에서 웹 서버를 시작할 수 있다.
-settings.py
- TIME_ZONE = 'Asia/Seoul' 로 변경
- STATIC_URL 아래에다가 STATIC_ROOT = os.path.join(BASE_DIR, 'static') 추가
- DEBUG = Ture 오류가 발생하면 오류내용을 보여준다. 실제 서비스 할 때는 False로 해주어야 한다.
- ALLOWED_HOSTS = ['*'] 모든 주소에 대해서 허가하겠다.
- DATABASES: sqlite3 덕분에 DB와 연결할 수 있는데 개발용이기 때문에 실제 운용 시에는 적절치않다.
- LANGUAGE_CODE = 'ko-kr'
3. python manage.py migrate # DB에 어떤식으로 데이터를 저장하겠다라는 설정이 되어 있다.
4. python manage.py runserver
[!] UnicodeDecodeError 오류 발생 시 python manage.py runserver 0.0.0.0:8000
모델(데이터베이스 테이블) 생성
1. python manage.py startapp blog
2. mysite/settings.py INSTALLED_APPS 아래에 'blog', 추가
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]
3. blog/models.py
from django.db import models
from django.utils import timezone # django
# 2줄 이상 띄워주는게 좋다
class Post(models.Model): # Post 모델의 이름, models는 Post가 장고 모델임을 의미
author = models.ForeignKey('auth.User') # 작성자명
title = models.CharField(max_length=200) # 제목, 길이제한 O
text = models.TextField() # 내용, 길이제한 X
created_date = models.DateTimeField(default=timezone.now) # 최초생성시각
published_date = models.DateTimeField(blank=True, null=True) # 발행날짜
def publish(self): # 발행
self.published_date = timezone.now() # 현재시각 저장
self.save()
def __str__(self): # _ _ 2개
return self.title
models.CharField - 글자 수가 제한된 텍스트
models.TextField - 글자 수에 제한이 없는 긴 텍스트
models.DateTimeField - 날짜와 시간을 의미
models.ForeignKey- 다른 모델에 대한 링크를 의미
4. 데이터베이스에 모델을 위한 테이블 만들기 python manage.py makemigrations blog
5. blog/migrations/0000_initial.py 생성완료 -> python manage.py migrate blog
[!] DB는 db.sqlite3 파일안에 들어있다.
'Web > Django' 카테고리의 다른 글
Django / 프로그램 애플리케이션 확장 (0) | 2019.06.30 |
---|---|
Django / 템플릿 동적 데이터와 쿼리셋 (0) | 2019.06.30 |
Django / 데이터 추가/수정/삭제 / HTML / ORM(정규표현식) / 쿼리셋 (0) | 2019.06.29 |
Django / Jupyter Notebook 설치하기 (0) | 2019.06.26 |
Django 가상환경 / FileNotFoundError: Error2 해결 (0) | 2019.06.26 |
댓글