E D R , A S I H C RSS

django

1. django ๋Š” ?

  • http://www.djangoproject.com/
  • Python ํ™˜๊ฒฝ์—์„œ ์›น์„ ์‰ฝ๊ฒŒ ๊ฐœ๋ฐœํ• ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” Framework
  • ๊ฐœ๋ฐœ์ด ๋๋‚˜๊ณ  ์‹ค์ œ๋กœ ์„œ๋น„์Šคํ•  ๊ฒฝ์šฐ์—๋Š” apache + mod_python ์œผ๋กœ ์˜ฌ๋ ค์•ผ ํ•œ๋‹ค.

2. ์˜๊ฒฌ

  • ๋Œ€์•ˆ์–ธ์–ด ์ถ•์ œ ํŠœํ† ๋ฆฌ์–ผ ์‹ค์Šต์„ ๋”ฐ๋ผ์„œ ํ•ด๋ณธ ๊ฒฐ๊ณผ ์ด๊ฒƒ์„ ์ตํžˆ๋ฉด ๋˜๊ฒŒ ํšจ์œจ์ด ๋†’์•„์งˆ๊ฒƒ ๊ฐ™๋‹ค.
  • html ์ด ์žˆ๋Š” template ์— ๋งŽ์€ ๊ฒƒ์„ ๋ฐ”๋ผ์ง€ ๋ง์ž. ๊ฐ€๋Šฅํ•˜๋ฉด view์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฑฐ์˜๋‹ค ์ฒ˜๋ฆฌํ•ด์„œ template์— ๋„˜๊ธฐ๋Š”๊ฒƒ์ด ์ข‹๋‹ค. template์—์„œ ๋ฐ›์•„์˜จ ๋ฐ์–ดํ„ฐ๋กœ ๋ฆฌ์ŠคํŠธ์™€ ๋งต ๋ณ€์ˆ˜์˜ ์ฒจ์ž(subscriber)๋กœ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ์•ˆ๋œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ์—๋Š” view์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์•„์˜ˆ ๊ฐ€๊ณตํ•ด์„œ ๋„˜๊ธฐ๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

3. DB ์—ฐ๊ฒฐ

  • pysqlite๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•„๋ž˜ ์ฒซ๋ฒˆ์งธ ํŠœํ† ๋ฆฌ์–ผ ์ฒ˜๋Ÿผ ํ•˜๋ฉด ๋œ๋‹ค.
  • mysql ์€ ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๊ณ  settings.py ํŒŒ์ผ์„ ์„ค์ •ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  pysqlite์™€ ๋‹ค๋ฅธ ์ ์€ DB ์ด๋ฆ„์„ ๋„ฃ๊ณ  ๋‚˜์„œ mysql ๋“ค์–ด๊ฐ€์„œ ๋”ฐ๋กœ DB๋ฅผ ๋งŒ๋“ค์–ด ์ค˜์•ผ ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ์ž๋„ ๋งŒ๋“ค์–ด ์ค˜์•ผ ํ•œ๋‹ค.
  • syncdb ํ•ด๋„ admin ์—์„œ ์ถ”๊ฐ€ํ•œ ๊ฒƒ์ด ๋ณด์ด์ง€ ์•Š์„๋•Œ๋Š” runserver ํ•œ๊ฑฐ๋ฅผ ์ค‘์ง€ ์‹œํ‚ค๊ณ  ๋‹ค์‹œ ์„œ๋ฒ„๋ฅผ ์‹œ์ž‘ ํ•˜๋ฉด ๋ณด์ธ๋‹ค.
  • pysqlite๋‹ค์šด๋กœ๋“œ
  • ๊ฐLinux๋ณ„์„ค์น˜

4. apache2, mod_python์„ ์ด์šฉํ•œ ์›น ์„œ๋ฒ„ ์„ค์ •

์„ค์ • ํŒŒ์ผ ๋•Œ๋ฌธ์— ์‚ฝ์งˆํ•˜์ง€ ๋ง™์‹œ๋‹ค.
~php
<Location "/<์›น์„ ํ†ตํ•ด ์ ‘๊ทผํ•  ์ฃผ์†Œ>">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    PythonPath "['<ํ”„๋กœ์ ํŠธ ๋ถ€๋ชจํด๋”>'] + sys.path"
    SetEnv DJANGO_SETTINGS_MODULE <ํ”„๋กœ์ ํŠธ ์ด๋ฆ„>.settings
    PythonDebug On
</Location>

์˜ˆ์‹œ /path/to/project/mysite ์— settings.py ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒฝ์šฐ
~php
<Location "/mysite"> #http://localhost/mysite
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    PythonPath "['/path/to/project'] + sys.path"
    SetEnv DJANGO_SETTINGS_MODULE mysite.settings
    PythonDebug On
</Location>

์‹ค์ˆ˜๋กœ
~php
<Location "/mysite/">
๋ผ๊ณ  ์“ฐ๋ฉด http://localhost/mysite ๋Š” ์•ˆ ๋˜๊ณ  http://localhost/mysite/ ๊ฐ€ ๋˜๋‹ˆ๊นŒ ์กฐ์‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ž˜๋„ ์•ˆ ๋˜๋ฉด ๋‹ค์Œ ์‚ฌ์ดํŠธ๋ฅผ ์ฐธ๊ณ ํ•ด ๋ด…์‹œ๋‹ค.

5. ์ถ”์ฒœ ํŠœํ† ๋ฆฌ์–ผ

6. mod_python์œผ๋กœ ๋™์ž‘์‹œ admin ํ™”๋ฉด ๊นจ์ง ํ•ด๊ฒฐ

  • ์›์ธ์€ CSS ๋ฅผ ์ œ๋Œ€๋กœ ๋กœ๋“œํ•˜์ง€ ๋ชปํ•ด์„œ์ž„.
  • settings.py ์•„๋ž˜ ๋ถ€๋ถ„์ฒ˜๋Ÿผ ์ˆ˜์ •

~cpp
ADMIN_MEDIA_PREFIX = '/'
  • ๊ทธ๋ฆฌ๊ณ  C:\Python24\Lib\site-packages\Django-0.95-py2.4.egg\django\contrib\admin\media ์— ์žˆ๋Š” css ํด๋”๋ฅผ docuemntRoot(www ์ด๋‚˜ htdoc) ํด๋”์— ๋ณต์‚ฌํ•˜๋ฉด ํ•ด๊ฒฐ๋จ.

7. ์ฐธ๊ณ  ํŽ˜์ด์ง€

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:31:39
Processing time 0.0071 sec