studies/Back-end

[Django] ν”„λ‘œμ νŠΈμ™€ μ•± μƒμ„±ν•˜κΈ° (Window ν™˜κ²½)

Vada Kim 2020. 12. 30. 11:16
728x90
λ°˜μ‘ν˜•

μœˆλ„μš°μ—μ„œ μž₯κ³  ν”„λ‘œμ νŠΈμ™€ μ•± μƒμ„±ν•˜λŠ” 방법

이전글 : 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 [앱이름]

였늘의 ν¬μŠ€νŒ…μ€ μ—¬κΈ°κΉŒμ§€μž…λ‹ˆλ‹€. λ‹€λ“€ μž₯κ³  κ°œλ°œν•˜λŠ”λ°μ— ν™”μ΄νŒ… ν•˜μ‹œκΈΈ λ°”λžλ‹ˆλ‹€!

728x90
λ°˜μ‘ν˜•