IT/Django
[Django] VScode 설정
ErrorMin
2024. 6. 19. 18:29
젯브레인의 파이참을 사용하면 Django프로젝트를 진행할때 참으로 편합니다. 그런데 사나이들이 편하고 쉬운것만 사용한다면 가오가 상할때가 있는데 그럴때 VScode를 사용하면서 어깨형님들과 나란히 서면 됩니다. (젯브레인이 겁나 비싸서 사용하는게 아닙니다 :)
사나이답게 Python 가상환경부터 만들어 주자
#터미널
python3 -m venv venv
#가상환경 실행
source venv/bin/activate
# 설치확인
pip list
뒤돌아 보지말고 바로 Django설치 하자
#장고 설치
pip install django
#설치후 다시 pip list를 하게되면 Django와 관련 패키지가 설치 된다.
pip list
#결과
Package Version
-------- -------
asgiref 3.8.1
Django 5.0.6
pip 24.0
sqlparse 0.5.0
내 github에 코드를 올릴건데 사나이가 바지주머니에 물건을 가득채우면 보기 싫잖아요 안들고 다녀도 될껀 뺍시다.
1. 파일 생성
2..파일 이름 : .gitignore
venv/
#그럼 git에 올릴때 venv과 파일안 내용은 github에 올라가지 않습니다.
git init
git remote add origin git@github.com@@@@@본인걸로 하세요
git branch -M main
git push -u origin main
그리고 아까 git list해서 나온 패키지들이 있을 겁니다.
파일로 관리하는게 아무래도 편하겠죠 뭘 설치 했으면 계속 업데이트 해줍시다.
#터미널
pip freeze > requirements.txt
#위 명령어를 작성하면 탐색기에 파일이 뜰건데 pip list를 쳤을때 나왔던 패키지들이 저장될겁니다.
#그리고 만약 내가만든 Django 프로젝트를 다른 사람한테 줄때 venv를 삭제하고 줘야 하는데
#그럴땐 아래처럼 명령어를 통해 세팅이 가능합니다.
#가상환경을 빠저나간다.
deactivate
#가상환경을 삭제한다.
rm -rf venv
#누가 내 코드를 받았다 그럼 다시 본인 가상환경을 만들겠죠
python3 -m venv venv
#가상환경 실행
source venv/bin/activate (맥환경 기준)
#이 상태에서 pip list하면 설치된게 없겠죠 그럴때 requirements.txt를 함께 줬으니 이걸로 패키지를 설치하면 됩니다.
pip install -r requirements.txt
이제 Django를 설치합시다.
django-admin startproject django_test .
#위 마지막 . 은 여기다가 설치할거다 입니다. . 없이 생성하면 폴더 하나가 더 생기고 그 안에 manage.py가 생성되는데 난 별로
#그리고 Django실행 하기전에 해줘야 할게 있습니다. 첫 시작때는 안해도 되는데 자주 하게될 명령어니 미리 해봅시다.
python manage.py makemigrations
python manage.py migrate
돈한푼 안들이고 사나이가된 기분을 만끽하면 될듯한데 완전한 사나이가 되려면 마지막으로 다음 명령어를 치면 됩니다.
python manage.py runserver
# manage.py가 있는 디렉토리에서 해야합니다. 안된다고 징징되면 할말 없는겁니다.
# 터미널에서 ls하고 manage.py가 있는지 확인먼저 해보고 하셔도 됩니다.
아 맞다 templates 폴더 추가하고 settings.py에 템플릿폴더 여기있다 라고 말해주고 자도록 합시다.
먼저 manage.py가 있는 폴더를 루트 디렉토리라고 하고 거기다가 templates라는 폴더를 생성해줍니다.
그리고 메인 App폴더 안에 settings.py라고 있는데 들어가줍니다.
# 아래 코드를 보면 비어있는 부분이 있는데 다음과 같이 추가해 줍니다.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR/'templates'], #(여기에 추가해 주세요)
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]