๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

728x90

pycharm

2/21 ์›” ์›”์š”์ผ! ์˜ค๋Š˜์€ Django์—์„œ ์ œ๊ณตํ•ด์ฃผ๋Š” ์‚ฌ์šฉ์ž ๋ฐ ๊ถŒํ•œ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. ์˜คํ›„ 3์‹œ๋ถ€ํ„ฐ๋Š” ์ธํ„ฐํŽ˜์ด์Šค ๊ฐœ๋ฐœ ์ˆ˜์—…์— ๋Œ€ํ•œ ์‹œํ—˜์ด ์žˆ๊ณ , ์˜คํ›„ 4์‹œ๋ถ€ํ„ฐ ํŒ€ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰! 1. users app ๋งŒ๋“ค๊ณ  lecture ํด๋”์˜ settings.py์— ์•ฑ ๋“ฑ๋ก ↓PyCharm Terminal↓, ↓settings.py↓ python manage.py startapp users # PyCharm Terminal -------------------------------- INSTALLED_APPS = [ # lecture ํด๋”์˜ settings.py 'users.apps.UsersConfig' ] 2. MySQL์—์„œ auth_user์˜ DESC ๋ณด๊ธฐ. username์ด id 3. auth_user D.. ๋”๋ณด๊ธฐ
2/17 ๋ชฉ ๋ชฉ์š”์ผ! ๋ฆฌ์ŠคํŠธ๋กœ ๋Œ์•„๊ฐ€๊ธฐ, ์ˆ˜์ •, ์‚ญ์ œ, ์ข‹์•„์š” ๋ฒ„ํŠผ์„ ๋งŒ๋“ค๊ณ  ๊ฐ๊ฐ์˜ ๊ธฐ๋Šฅ์„ ์—ฌํƒœ ๋ฐฐ์šด ๊ฒƒ์„ ์‘์šฉํ•ด ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š”๋ฐ ์–ด๋ ต๋‹ค์•„์•„์•„์•„! ๋ฆฌ์ŠคํŠธ๋กœ ๋Œ์•„๊ฐ€๊ธฐ ๋ง๊ณ ๋Š” ๊ฐ์ด ์•ˆ ์žกํ˜€.. 1. HTML ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์ด์šฉํ•ด์„œ ์‚ฌ์šฉ์ž ์ž…๋ ฅ ์–‘์‹(์ž…๋ ฅ Form)์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, Django๊ฐ€ ์ œ๊ณตํ•˜๋Š” Model Form(class)๋ฅผ ์ด์šฉํ•จ bbs App ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— forms.py ์ƒ์„ฑํ•˜๊ณ  Django์—์„œ forms ๋ชจ๋“ˆ, bbs.models์—์„œ class๋ฅผ ๋ถˆ๋Ÿฌ์˜จ ํ›„ form์— ๋Œ€ํ•œ class ์ •์˜ํ•จ ↓forms.py↓ from django import forms from bbs.models import Board class BoardForm(forms.ModelForm): class Meta: model =.. ๋”๋ณด๊ธฐ
2/16 ์ˆ˜ ์ˆ˜์š”์ผ! ์˜ค๋Š˜์€ Django๋กœ ๊ฒŒ์‹œํŒ์„ ๋งŒ๋“ ๋‹ค. 1. ๋ฃจํŠธ ๋””ํ…ํ„ฐ๋ฆฌ ๋ฐ”๋กœ ๋ฐ‘์— ํ…œํ”Œ๋ฆฟ์„ ๋ชจ์•„ ์ €์žฅํ•  ๋””ํ…ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ , settings.py ํŒŒ์ผ์—์„œ os ๋ชจ๋“ˆ(๊ฒฝ๋กœ์™€ ํŒŒ์ผ๋ช…์„ ํ•ฉ์นจ)์„ import ํ•œ ํ›„์— ํ…œํ”Œ๋ฆฟ ๋””ํ…ํ„ฐ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•จ os.path.join(๊ฒฝ๋กœ, 'ํŒŒ์ผ๋ช…') → C:/python-django/LectureSampleProject_0216/template ํŒŒ์ผ๋“ค 2. Static files(CSS, JS, images)์€ client์˜ request URL์—์„œ ๋‚˜์˜ค๋Š” ํ˜•ํƒœ์ด๋ฏ€๋กœ, ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ฐ”๋กœ ๋ฐ‘์— static ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  settings.py ํŒŒ์ผ์—์„œ static ๋””ํ…ํ„ฐ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•จ ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ฐ”๋กœ ๋ฐ‘์— media ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  Media ํŒŒ์ผ(client๊ฐ€ server์—.. ๋”๋ณด๊ธฐ
2/15 ํ™” ํ™”์š”์ผ! PyCharm์œผ๋กœ ์ง€๋‚œ๋ฒˆ์— ํ–ˆ๋˜ Project(MyFirstWeb_0215) ์ƒ์„ฑ, Django ์„ค์น˜ ๋ฐ MySQL ์—ฐ๋™์„ ๋˜‘๊ฐ™์ด ์ง„ํ–‰ํ–ˆ๋‹ค. 1. ์˜ค๋Š˜์€ templates ํด๋” ์•ˆ์— ์ถ”๊ฐ€๋กœ polls ํด๋”๋ฅผ ๋งŒ๋“ค๊ณ  index.html ํŒŒ์ผ์„ ์ƒ์„ฑํ•ด์คŒ 2. HttpResponse ์•ˆ์— ์งˆ๋ฌธ์„ ํด๋ฆญํ•˜๋ฉด question.id๊ฐ€ ์—ฐ๊ฒฐ๋˜๋„๋ก link ์†์„ฑ ์ง€์ •ํ•˜๊ธฐ 3. urls.py(polls URLConf) ํŒŒ์ผ์—์„œ question_id์— ๋Œ€ํ•œ URLConf์˜ ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•จ 4. polls App์— ํ•ด๋‹น๋˜๋Š” URL๋กœ ์ง„์ž…(request)ํ•˜๋ฉด view๋กœ detailํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๋ฏ€๋กœ ์ด๋ฅผ ์ •์˜ํ•ด์•ผ ํ•จ 5. templates/polls ํด๋” ์•ˆ์— detail๋ผ๋Š” HTML ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์คŒ 6. polls.. ๋”๋ณด๊ธฐ
2/14 ์›” ์›”์š”์ผ! ๐Ÿฑ‍๐Ÿ‰ ์ง€๋‚œ ๊ธˆ์š”์ผ์— ์ด์–ด PyCharm๊ณผ MySQL์„ ์ด์šฉํ•ด Django๋ฅผ ๋ฐฐ์šด๋‹ค! PyCharm์œผ๋กœ ์ง€๋‚œ๋ฒˆ์— ํ–ˆ๋˜ Project(MyFirstWeb_0214) ์ƒ์„ฑ, Django ์„ค์น˜ ๋ฐ MySQL ์—ฐ๋™์„ ๋˜‘๊ฐ™์ด ์ง„ํ–‰ํ–ˆ๋‹ค. 1. MySQL๋กœ DB Table์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์•„๋‹Œ, PyCharm์—์„œ Python ๋ชจ๋“ˆ ์ค‘ models๋ฅผ ๋ถˆ๋Ÿฌ์™€์„œ class๋ฅผ ๋งŒ๋“ฆ polls ํด๋”์˜ models.py ํŒŒ์ผ ์•ˆ์— class๋กœ DB Table ๋ช…์„ธ๋ฅผ ์„ค์ •ํ•จ. model class๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” ๋ฐ˜๋“œ์‹œ model.Model์„ ์ƒ์†ํ•ด์•ผ ํ•จ. PK(Primary Key)๊ฐ€ ์ž๋™์œผ๋กœ ํ•˜๋‚˜ ์„ค์ •๋จ from django.db import models class Question(models.Model): # id = .. ๋”๋ณด๊ธฐ

728x90