미완성입니다
가상환경
pip install virtualenv
python -m venv myvenv
.\.venv\Scripts\activate (끄고 싶으면 deactivate)
pip install django
django-admin startproject django_meow
cd django_meow에 들어가서 python manage.py migrate => sqlite3등 데베 사용시
python manage.py startapp main
(settings.py에 INSTALLED_APPS에 main추가하기)
[static설정]
static폴더를 앱안에 넣어두기 앱이름/static/앱이름 식으로 여러개의 앱을 다룰 때 사용한다.
settings.py
STATIC_URL = 'static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
STATICFILES_FINDERS = ( #앱이 여러개 일 때 앱별로 static 넣어두길 권장
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
STATIC_ROOT = os.path.join(BASE_DIR, 'static_root')
이후 : python manage.py collectstatic 로 static_root를 업데이트
[/static설정]
[template설정]
html파일 등 웹페이지관련 파일을 저장할 때 설정
1. 앱이름/template/앱이름 폴더 생성하기. 하위 폴더 안에 ~~.html등 템플릿이 저장된다.
[/template설정]
[첫 웹페이지 만들기]
프로젝트/urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('', main_page), #추가
]
프로젝트/views.py
def main_page(request):
return render(request,"main/index.html")
TEMPLATES = [
~~
'DIRS': [os.path.join(BASE_DIR,"main","template")],# 비어있는 dirs 추가
~~
]
[/첫 웹페이지 만들기]
[장고 세션]
프로젝트/settings.py
INSTALLED_APPS = [
'django.contrib.sessions', #추가
]
MIDDLEWARE = [
'django.contrib.sessions.middleware.SessionMiddleware', #없다면 추가
]
#아무곳에나
SESSION_COOKIE_AGE = 1200 #20분동안 세션유지
SESSION_SAVE_EVERY_REQUEST = True # True-> 요청있을 때마다 session타임아웃 갱신
[/장고 세션]
[미디어 설정]
프로젝트/settings.py
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
프로젝트/urls.py
if settings.DEBUG: # 개발 모드일 때만
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
+이미지 저장을 위한 pip install pillow
+rest하게 만들기 위해 pip install djangorestframework, settings.py에 rest_framework 추가
[/미디어 설정]
'공부-프레임워크, 개발도구 > Flask django' 카테고리의 다른 글
Flask시작하기 (0) | 2021.12.27 |
---|
댓글