"파이썬 장고"의 두 판 사이의 차이
DB CAFE
(→프로젝트시작) |
|||
(같은 사용자의 중간 판 10개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
− | + | = 장고= | |
− | + | == 모듈 구성도== | |
[[파일:장고 모듈 구성도.PNG||왼쪽]] | [[파일:장고 모듈 구성도.PNG||왼쪽]] | ||
− | + | == 프레임워크 구조 == | |
[[파일:Djanggo.png||가운데]] | [[파일:Djanggo.png||가운데]] | ||
− | + | === 장고 파일 구조 === | |
− | + | <source lang=python> | |
− | + | ├── db.sqlite3 | |
− | + | ├── manage.py | |
− | + | ├── mysite | |
− | + | │ ├── __init__.py | |
− | + | │ ├── settings.py | |
− | + | │ ├── urls.py | |
− | + | │ └── wsgi.py | |
− | + | └── app | |
− | + | ├── __init__.py | |
− | + | ├── admin.py | |
− | + | ├── apps.py | |
− | + | ├── migrations | |
− | + | │ └── __init__.py | |
− | + | ├── models.py | |
− | + | ├── tests.py | |
− | + | └── views.py | |
− | + | </source> | |
− | + | ||
− | + | == 가상화 == | |
− | + | <source lang=python> | |
− | + | source myvenv/bin/activate | |
− | + | </source> | |
− | + | ||
− | + | == 프로젝트시작== | |
− | + | <source lang=python> | |
− | + | django-admin startproject myprj . | |
− | + | </source> | |
− | + | ||
− | + | == 디렉토리구조 == | |
− | + | === manage.py === | |
− | + | ||
− | + | === * 사이트 관리 === | |
− | + | === * 서버시작 === | |
− | 'default' : { | + | <source lang=python> |
− | + | python manage.py runserver | |
− | + | or -- 포트 지정할 경우 | |
− | } | + | python manage.py runserver 0.0.0.0:8000 |
− | + | </source> | |
− | + | ||
− | + | === settings.py === | |
− | + | <source lang=python> | |
+ | INSTALLED_APPS = [ | ||
+ | 'django.contrib.admin', | ||
+ | 'django.contrib.auth', | ||
+ | 'django.contrib.contenttypes', | ||
+ | 'django.contrib.sessions', | ||
+ | 'django.contrib.messages', | ||
+ | 'django.contrib.staticfiles', | ||
+ | 'app', | ||
+ | ] | ||
+ | </source> | ||
+ | ==== 웹사이트설정 ==== | ||
+ | <source lang=python> | ||
+ | TIME_ZONE = 'Asia/Seoul' | ||
+ | STATIC_URL = '/static/' | ||
+ | * 정적파일위치 | ||
+ | * CSS | ||
+ | STATIC_ROOT = os.path.join(BASE_DIR,'static') | ||
+ | ALLOWED_HOSTS = '' | ||
+ | * 로컬호스트 | ||
+ | * [::1] | ||
+ | * 127.0.0.1 | ||
+ | 배포시 | ||
+ | ALLOWED_HOSTS = ['127.0.0.1','.xxx.com'] | ||
+ | MESSAGE_STORAGE | ||
+ | 크롬북 사용자 일때 = 'django.contrib.messages.storage.session.SessionStorage' | ||
+ | DATABASES = { | ||
+ | 'default' : { | ||
+ | 'ENGINE': 'django.db.backends.sqlite3','NAME': os.path.join(BASE_DIR, 'db.sqlite3'), | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | === DB설정 === | ||
+ | <source lang=python> | ||
+ | python manage.py migrate | ||
+ | </source> | ||
+ | |||
+ | * DB생성 명령 | ||
+ | * INSTALLED_APPS | ||
* = [ | * = [ | ||
...... | ...... | ||
54번째 줄: | 93번째 줄: | ||
* wsgi.py | * wsgi.py | ||
* __init__.py | * __init__.py | ||
− | + | ||
− | + | === 어플리케이션생성 === | |
− | + | <source lang=python> | |
− | * blog | + | python manage.py startapp blog |
+ | </source > | ||
+ | <source lang=python> | ||
+ | * blog | ||
* migrations | * migrations | ||
* __init__.py | * __init__.py | ||
106번째 줄: | 148번째 줄: | ||
* tests.py | * tests.py | ||
* views.py | * views.py | ||
+ | </source> | ||
* 장고에 등록하기 | * 장고에 등록하기 | ||
+ | |||
[[Category:python]] | [[Category:python]] |
2021년 6월 9일 (수) 14:36 기준 최신판
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
목차
1 장고[편집]
1.1 모듈 구성도[편집]
1.2 프레임워크 구조[편집]
1.2.1 장고 파일 구조[편집]
├── db.sqlite3
├── manage.py
├── mysite
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── app
├── __init__.py
├── admin.py
├── apps.py
├── migrations
│ └── __init__.py
├── models.py
├── tests.py
└── views.py
1.3 가상화[편집]
source myvenv/bin/activate
1.4 프로젝트시작[편집]
django-admin startproject myprj .
1.5 디렉토리구조[편집]
1.5.1 manage.py[편집]
1.5.2 * 사이트 관리[편집]
1.5.3 * 서버시작[편집]
python manage.py runserver
or -- 포트 지정할 경우
python manage.py runserver 0.0.0.0:8000
1.5.4 settings.py[편집]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app',
]
1.5.4.1 웹사이트설정[편집]
TIME_ZONE = 'Asia/Seoul'
STATIC_URL = '/static/'
* 정적파일위치
* CSS
STATIC_ROOT = os.path.join(BASE_DIR,'static')
ALLOWED_HOSTS = ''
* 로컬호스트
* [::1]
* 127.0.0.1
배포시
ALLOWED_HOSTS = ['127.0.0.1','.xxx.com']
MESSAGE_STORAGE
크롬북 사용자 일때 = 'django.contrib.messages.storage.session.SessionStorage'
DATABASES = {
'default' : {
'ENGINE': 'django.db.backends.sqlite3','NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
1.5.5 DB설정[편집]
python manage.py migrate
- DB생성 명령
- INSTALLED_APPS
* = [
...... ,blog', ]
- urls.py
- wsgi.py
- __init__.py
1.5.6 어플리케이션생성[편집]
python manage.py startapp blog
* blog
* migrations
* __init__.py
* __init__.py
* admin.py
* models.py
* 데이터모델생성
* 전체소스...
* > from django.db import models
* > from django.utils import timezone
* >
* >
* > class Post(models.Model):
* > author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
* > title = models.CharField(max_length=200)
* > text = models.TextField()
* > 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):
* > return self.title
* from django.db import models
* from django.utils import timezone
* class Post(models.Model):
* author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
* 저자 컬럼
* title = models.CharField(max_length=200)
* 타이틀 컬럼
* text = models.TextField()
* 내용 컬럼
* 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):
* return self.title
* tests.py
* views.py
- 장고에 등록하기