홍카나의 공부방

[Django] 장고 명령어 정리(치트시트) - 1 본문

Web/Django

[Django] 장고 명령어 정리(치트시트) - 1

홍문관카페나무 2023. 1. 12. 15:58

Windows 기준

 

- django-admin startproject {project 명}

=> 프로젝트 폴더 및 manage.py 생성

 

- (Git 설정) .gitignore 설정 체크

=> gitignore.io에 들어가서 Django 검색 입력 후 필요에 따라 복붙하고 이용.

=> git add .gitignore로 .gitignore까지 stage에 당연히 올려줘야한다.

 

 


 

 

 

- python {project 폴더 명}\manage.py check

=> 이상이 없는지 system check 진행

 

- python {project 폴더 명}\manage.py runserver

=> 서버실행 ( 서버는 로컬호스트로, default is 127.0.0.1:8000 )

 

- python {project 폴더 명}\manage.py startapp {app이름} {디렉토리 명}

=> 디렉토리 명에 . 하나만 찍게 되면 현재 cmd에 찍혀있는 dir에서 app폴더들이 만들어짐

 

- {프로젝트 폴더명}\{프로젝트 폴더명}\settings.py에 들어가서 INSTALLED_APPS list에

startapp으로 추가한 app이름이 추가되어있는지 확인하기.

=> {app 폴더명}\apps.py의 Postsconfig class name도 일치시켜줬는지 확인하기.

=> settings.py의 TIME_ZONE(Asia/Seoul), LANGUAGE_CODE(ko) 변경도 이때 해주면 좋음

 

대충 이런식으로 만들 수 있다.

 

- manage.py에 import site 및 site.addsitedir(os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) 추가

=> 이후 모델 설계 등.. 할 일 진행하기.

 

https://velog.io/@piopiop/Django-migration%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90

 

[Django] migration에 대해 알아보자

django 공식 문서보다 이해하기 쉬운 것 같아 위키피디아에서 model의 정의를 가져왔다. django에서 model은 데이터에 관한 정보를 담는다. 데이터에 대한 접근, 검증, 작동과 데이터 사이의 관계를 정

velog.io

 

django에서 모델을 만들고 해당 변경 사항을 DB에 적용하려고 할 때, migration을 사용한다.

migration에 대한 명령어는 다음과 같다.

 

- python {project 폴더 명}\manage.py showmigrations

=> 존재하는 model들에 대한 migrations 확인

 

- python {project 폴더 명}\manage.py makemigrations

=> 변경사항이 있는 모델에 대하여 새로운 migration을 만들어냄.

 

- python {project 폴더 명}\manage.py migrate

=> DB에 migration 내용들을 동기화시키는 명령어

 

- python {project 폴더 명}\manage.py shell

=> python 인터프리터 shell을 여는 명령어

=> pip install ipython로 설치해서 사용하면 파이썬 인터프리터 터미널 사용이 편리해짐

 


아래는 shell 명령어. {app 이름}.objects가 접두사

 

.all()

.create(parameters)

.values().first()

.all().get(id=n)

(위 명령어로 임의의 변수에 값을 담은 이후) .save()

 

이후 템플릿 추가 및 views.py에서 함수로 뷰를 만들어 줄 수 있음.

아래처럼.

# views.py on apps

from django.shortcuts import render

def hello_world(request, *args, **kwargs):
    return render(request, "{템플릿 폴더 명}/hello_world.html")

 

app의 urls.py 생성후 urlpatterns list 작성 및 project folder의 urls.py수정하기.

# urls.py in project main

from django.urls import include, path

...

urlpatterns =[
	path("admin/", admin.site.urls),
    path("", include('{app의 urls경로}')),
]
# urls.py on app

from django.urls import path
from {.views.py} import {함수명}

urlpatterns = [
    path("{원하는 경로}", 함수명),
]

 

 

반응형