Search
Duplicate

Django μ„€μΉ˜

Django μ„€μΉ˜

β€’
μ„€μΉ˜ν•˜κΈ°
β€’
VS CODE ν™•μž₯

μ„€μΉ˜ν•˜κΈ°

Windows ν™˜κ²½

1.
Python μ„€μΉ˜ν•˜κΈ°
β€’
Python 곡식 μ›Ήμ‚¬μ΄νŠΈ(python.org)μ—μ„œ μ΅œμ‹  버전 λ‹€μš΄λ‘œλ“œ
β€’
μ„€μΉ˜ μ‹œ "Add Python to PATH" μ˜΅μ…˜ 체크
2.
κ°€μƒν™˜κ²½ 생성 및 ν™œμ„±ν™”
β€’
κ°€μƒν™˜κ²½ 생성
β€’
κ°€μƒν™˜κ²½ ν™œμ„±ν™”
β€’
κ°€μƒν™˜κ²½ λΉ„ν™œμ„±ν™”
3.
Django μ„€μΉ˜
pip install django
PowerShell
볡사

Python μ„€μΉ˜ν•˜κΈ°

λ‹€μŒ λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ Windows νŒ¨ν‚€μ§€ κ΄€λ¦¬μž(winget)둜 Python을 μ„€μΉ˜ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€:
winget install Python.Python.3.13
Shell
볡사
μœ„ λͺ…λ Ήμ–΄λ₯Ό PowerShellμ΄λ‚˜ λͺ…λ Ή ν”„λ‘¬ν”„νŠΈμ—μ„œ μ‹€ν–‰ν•˜λ©΄ μžλ™μœΌλ‘œ Python이 μ„€μΉ˜λ©λ‹ˆλ‹€.
주의: winget λͺ…λ Ήμ–΄ μ‹€ν–‰ μ‹œ κ΄€λ¦¬μž κΆŒν•œμ΄ ν•„μš”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

κ°€μƒν™˜κ²½ 생성 및 ν™œμ„±ν™”

β€’
κ°€μƒν™˜κ²½ 생성
β€’
κ°€μƒν™˜κ²½ ν™œμ„±ν™”
파이썬 κ°€μƒν™˜κ²½(Virtual Environment)은 ν”„λ‘œμ νŠΈλ³„λ‘œ 독립적인 파이썬 ν™˜κ²½μ„ λ§Œλ“€μ–΄μ£ΌλŠ” λ„κ΅¬μž…λ‹ˆλ‹€.
β€’
독립적인 νŒ¨ν‚€μ§€ 관리: 각 ν”„λ‘œμ νŠΈλ§ˆλ‹€ ν•„μš”ν•œ λΌμ΄λΈŒλŸ¬λ¦¬μ™€ νŒ¨ν‚€μ§€λ₯Ό λ”°λ‘œ μ„€μΉ˜ν•˜κ³  관리할 수 μžˆμŠ΅λ‹ˆλ‹€.
β€’
버전 좩돌 λ°©μ§€: μ„œλ‘œ λ‹€λ₯Έ ν”„λ‘œμ νŠΈμ—μ„œ 같은 라이브러리의 λ‹€λ₯Έ 버전을 μ‚¬μš©ν•΄μ•Ό ν•  λ•Œ μΆ©λŒμ„ ν”Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.
β€’
μ‹œμŠ€ν…œ 파이썬 보호: κ°€μƒν™˜κ²½μ„ μ‚¬μš©ν•˜λ©΄ μ‹œμŠ€ν…œμ— μ„€μΉ˜λœ 파이썬 ν™˜κ²½μ„ κ±΄λ“œλ¦¬μ§€ μ•Šκ³  μ•ˆμ „ν•˜κ²Œ κ°œλ°œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
κ°€μƒν™˜κ²½μ€ ν”„λ‘œμ νŠΈμ˜ μ˜μ‘΄μ„±μ„ κΉ”λ”ν•˜κ²Œ κ΄€λ¦¬ν•˜κ³ , λ‹€λ₯Έ κ°œλ°œμžμ™€ ν˜‘μ—…ν•  λ•Œλ„ λ™μΌν•œ 개발 ν™˜κ²½μ„ μ‰½κ²Œ κ³΅μœ ν•  수 있게 ν•΄μ€λ‹ˆλ‹€.
κ°€μƒν™˜κ²½ ν™œμ„±ν™”μ™€ λΉ„ν™œμ„±ν™”μ˜ 의미
β€’
κ°€μƒν™˜κ²½ ν™œμ„±ν™”(activate):
β—¦
ν˜„μž¬ 터미널 μ„Έμ…˜μ΄ κ°€μƒν™˜κ²½μ„ μ‚¬μš©ν•˜λ„λ‘ μ „ν™˜
β—¦
ν”„λ‘¬ν”„νŠΈ μ•žμ— (myvenv)κ°€ ν‘œμ‹œλ˜μ–΄ ν™œμ„±ν™” μƒνƒœλ₯Ό λ‚˜νƒ€λƒ„
β—¦
pip둜 μ„€μΉ˜ν•˜λŠ” νŒ¨ν‚€μ§€λ“€μ΄ κ°€μƒν™˜κ²½ 내뢀에 μ„€μΉ˜λ¨
β€’
κ°€μƒν™˜κ²½ λΉ„ν™œμ„±ν™”(deactivate):
β—¦
κ°€μƒν™˜κ²½μ—μ„œ λΉ μ Έλ‚˜μ™€ μ‹œμŠ€ν…œ μ „μ—­ Python ν™˜κ²½μœΌλ‘œ 볡귀
β—¦
ν”„λ‘¬ν”„νŠΈμ—μ„œ (myvenv) ν‘œμ‹œκ°€ 사라짐
β—¦
이후 pip둜 μ„€μΉ˜ν•˜λŠ” νŒ¨ν‚€μ§€λŠ” μ‹œμŠ€ν…œ 전역에 μ„€μΉ˜λ¨

κ°€μƒν™˜κ²½ 생성

python -m venv κ°€μƒν™˜κ²½μ΄λ¦„
python -m venv myvenv
PowerShell
볡사
κ°€μƒν™˜κ²½ ν™œμ„±ν™”μ™€ λΉ„ν™œμ„±ν™”λŠ” λ°˜λ“œμ‹œ λͺ…λ Ή ν”„λ‘¬ν”„νŠΈ(CMD)μ—μ„œ μ‹€ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€. PowerShellμ—μ„œλŠ” μ •μƒμ μœΌλ‘œ μž‘λ™ν•˜μ§€ μ•Šμ„ 수 μžˆμŠ΅λ‹ˆλ‹€.
주의: PowerShell이 μ•„λ‹Œ CMD(λͺ…λ Ή ν”„λ‘¬ν”„νŠΈ)λ₯Ό μ‚¬μš©ν•˜μ„Έμš”!

κ°€μƒν™˜κ²½ ν™œμ„±ν™”

myvenv\Scripts\activate
PowerShell
볡사

κ°€μƒν™˜κ²½ λΉ„ν™œμ„±ν™”

κ°€μƒν™˜κ²½μ„ λΉ„ν™œμ„±ν™”ν•˜λ €λ©΄ λ‹€μŒ λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€:
deactivate
PowerShell
볡사
κ°€μƒν™˜κ²½μ΄ λΉ„ν™œμ„±ν™”λ˜λ©΄ ν”„λ‘¬ν”„νŠΈμ—μ„œ (myvenv) ν‘œμ‹œκ°€ μ‚¬λΌμ§‘λ‹ˆλ‹€.

Django μ„€μΉ˜

pip install django
Bash
볡사

일반 μ„€μΉ˜

가상 ν™˜κ²½μ— μ„€μΉ˜

파이썬 μ„€μΉ˜ 방식 비ꡐ

νŒŒμ΄μ¬μ„ μ„€μΉ˜ν•˜λŠ” λ°©μ‹μ—λŠ” 일반 μ„€μΉ˜μ™€ 가상 ν™˜κ²½ μ„€μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. 각각의 νŠΉμ§•μ„ μ΄ν•΄ν•˜κ³  ν”„λ‘œμ νŠΈ 상황에 맞게 μ„ νƒν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.

일반 μ„€μΉ˜

β€’
μž₯점:
β—¦
λΉ λ₯΄κ³  κ°„λ‹¨ν•œ μ„€μΉ˜
β—¦
λͺ¨λ“  ν”„λ‘œμ νŠΈμ—μ„œ μ¦‰μ‹œ μ‚¬μš© κ°€λŠ₯
β—¦
μ‹œμŠ€ν…œ μ „μ²΄μ—μ„œ μΌκ΄€λœ ν™˜κ²½
β€’
단점:
β—¦
νŒ¨ν‚€μ§€ 버전 좩돌 κ°€λŠ₯μ„±
β—¦
ν”„λ‘œμ νŠΈλ³„ μ˜μ‘΄μ„± 관리 어렀움
β—¦
μ‹œμŠ€ν…œ 파이썬 ν™˜κ²½ μ˜€μ—Ό μœ„ν—˜

가상 ν™˜κ²½ μ„€μΉ˜

β€’
μž₯점:
β—¦
ν”„λ‘œμ νŠΈλ³„ 독립적인 ν™˜κ²½
β—¦
νŒ¨ν‚€μ§€ 버전 좩돌 λ°©μ§€
β—¦
ν”„λ‘œμ νŠΈ 이식성 ν–₯상
β€’
단점:
β—¦
초기 μ„€μ • μ‹œκ°„ ν•„μš”
β—¦
ν”„λ‘œμ νŠΈλ§ˆλ‹€ 별도 μ„€μΉ˜ ν•„μš”
β—¦
가상 ν™˜κ²½ μ „ν™˜ μž‘μ—… ν•„μš”
ꢌμž₯사항:
μ‹€μ œ 개발 ν”„λ‘œμ νŠΈμ—μ„œλŠ” 가상 ν™˜κ²½ μ‚¬μš©μ„ κ°•λ ₯히 ꢌμž₯ν•©λ‹ˆλ‹€. ν”„λ‘œμ νŠΈμ˜ μ•ˆμ •μ„±κ³Ό 이식성을 보μž₯ν•˜κ³ , λ‹€λ₯Έ κ°œλ°œμžλ“€κ³Όμ˜ ν˜‘μ—…μ„ μš©μ΄ν•˜κ²Œ λ§Œλ“€μ–΄μ€λ‹ˆλ‹€.

Linux/Mac ν™˜κ²½

1.
Python μ„€μΉ˜ν•˜κΈ°
β€’
ν„°λ―Έλ„μ—μ„œ λ‹€μŒ λͺ…λ Ήμ–΄λ‘œ Python μ„€μΉ˜ (Mac)
brew install python
Bash
볡사
β€’
Linux의 경우 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € μ‚¬μš©
sudo apt-get install python3
Bash
볡사
2.
κ°€μƒν™˜κ²½ 생성 및 ν™œμ„±ν™”
β€’
κ°€μƒν™˜κ²½ 생성
python3 -m venv myvenv
Bash
볡사
β€’
κ°€μƒν™˜κ²½ ν™œμ„±ν™”
source myvenv/bin/activate
Bash
볡사
3.
Django μ„€μΉ˜
pip install django
Bash
볡사

μ„€μΉ˜ 확인

python -m django --version
Python
볡사
μœ„ λͺ…λ Ήμ–΄λ‘œ Djangoκ°€ μ •μƒμ μœΌλ‘œ μ„€μΉ˜λ˜μ—ˆλŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

VS CODE ν™•μž₯

DjangoλŠ” Python μ›Ή ν”„λ ˆμž„μ›Œν¬λ₯Ό μœ„ν•œ κ°•λ ₯ν•œ VS Code ν™•μž₯ ν”„λ‘œκ·Έλž¨μž…λ‹ˆλ‹€. 이 ν™•μž₯은 Django ν…œν”Œλ¦Ώ 언어에 λŒ€ν•œ ꡬ문 κ°•μ‘°, μŠ€λ‹ˆνŽ«, μžλ™ μ™„μ„± λ“± λ‹€μ–‘ν•œ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.
β€’
μ£Όμš” κΈ°λŠ₯:
β—¦
Django ν…œν”Œλ¦Ώ μ–Έμ–΄ ꡬ문 κ°•μ‘°
β—¦
Django μŠ€λ‹ˆνŽ« 지원
β—¦
μžλ™ μ™„μ„± κΈ°λŠ₯
β—¦
Go to Definition 지원
β—¦
ν…œν”Œλ¦Ώ νƒœκ·Έ 및 ν•„ν„° μžλ™ μ™„μ„±
이 ν™•μž₯ ν”„λ‘œκ·Έλž¨μ„ μ„€μΉ˜ν•˜λ©΄ Django ν”„λ‘œμ νŠΈ 개발 μ‹œ 생산성을 크게 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€.