[Django] νλ‘μ νΈμ μ± μμ±νκΈ° (Window νκ²½)
μλμ°μμ μ₯κ³ νλ‘μ νΈμ μ± μμ±νλ λ°©λ²
μ΄μ κΈ : we-always-fight-with-code.tistory.com/110?category=892282
[Django] μ€μΉνκΈ° (Window) κ°μνκ²½ λ§λ€κΈ°
Python version 3.8.2 μμ μμ±λμμ΅λλ€. μ₯κ³ μ κ΄λ ¨λ λͺ¨λ μνμ κ°μνκ²½ μμμ μ΄λ£¨μ΄μ ΈμΌ νλ€. 1. cmdλ₯Ό μ΄μ΄ κ°μνκ²½μ λ§λ€ κ²½λ‘λ‘ μ΄λ 2. κ°μνκ²½ μ€λΉ pip install virtualenv 3. κ°μνκ²½
we-always-fight-with-code.tistory.com
κΈ°λ³ΈμΈν νν λ¦¬μΌ - μ΄μ΄μ μ§νν©λλ€.
μ λ κΈ°μ‘΄ μ₯κ³ κΈ°μ‘΄ μ± λ³΄μ μ€μ λκ° κΌ¬μ¬μ κ·Έλ₯ μλ‘ λ§λλ μ€μ΄λ€μ. γ γ γ γ
β»μ₯κ³ κ°μνκ²½ μΈν μ΄ λμ΄μλ€λ μ μ λ‘ μμ±λμμ΅λλ€.
μ΄λ² ν¬μ€ν μμ μ₯κ³ νλ‘μ νΈμ μ±, κ·Έλ¦¬κ³ μ±μμ μ¬μ©ν DB λͺ¨λΈκΉμ§ μμ±ν΄λ³΄λλ‘ νκ² μ΅λλ€.
1. Scripts ν΄λμμ νλ‘μ νΈ μμ±
django-admin.py startproject mysite .
μ΄λ mysiteλ μμ±ν μ₯κ³ νλ‘μ νΈ ν΄λλͺ μ λλ€. λμ μ λΆμ΄μ μΌ ν©λλ€.
λ§μ½ mysite ν΄λμμ κ°μ μ΄λ¦μ ν΄λκ° λ μ‘΄μ¬νλ€λ©΄ μ μ λΆμ΄μ§ μκ³ λͺ λ Ήμ μ€νν κ²μ΄λ mysite ν΄λλ₯Ό μμ ν λ€μ λͺ λ Ή μ λ ₯ν΄μ£Όμλ©΄ λ©λλ€.
2. settings.py νΈμ§
mysite ν΄λ μμ settings.py λΌλ νμΌμ μ΄κ³ μλμ κ°μ΄ μμ ν΄μ€λλ€.
TIME_ZONE = 'Asia/Seoul'
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
3. Sqlite DB μμ±
μ₯κ³ μμ λ°μ΄ν°λ² μ΄μ€λ Sqliteκ° λν΄νΈμ λλ€. λ³΄ν΅ κ·Έλλ‘ μ¬μ©νκΈ΄ νλλ°, λ€λ₯Έ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ¬μ©νλ€λ©΄ λ€λ₯Έ λ¬Έμλ₯Ό μ°Έκ³ νμκΈΈ λ°λλλ€.
python manage.py migrate
4. μ₯κ³ μ± μμ±
python manage.py startapp [μ μ± μ΄λ¦(λλ ν 리λͺ
)]
μμ Scripts ν΄λ λ΄μ λλ€.
5. μ± μΆκ°
Scripts/mysite(νλ‘μ νΈdir)/settings.py λ₯Ό μ΄κ³ λ€μκ³Ό κ°μ΄ μ± μ΄λ¦μ μΆκ°ν©λλ€.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'[μμ±ν μ± μ΄λ¦]',
]
6. DB λͺ¨λΈ μΆκ°
1) μ±ν΄λ/models.pyμ DBλͺ¨λΈλ‘ μ¬μ©ν νμ΄μ¬ ν΄λμ€(κ°μ²΄)λ₯Ό μ μνλ€.
2) λͺ¨λΈ μμ±
python manage.py makemigrations [μ±μ΄λ¦]
3) λͺ¨λΈ λ°μ
python manage.py migrate [μ±μ΄λ¦]
μ€λμ ν¬μ€ν μ μ¬κΈ°κΉμ§μ λλ€. λ€λ€ μ₯κ³ κ°λ°νλλ°μ νμ΄ν νμκΈΈ λ°λλλ€!