Django概説
「 今 更 D j a n g o ? 」 感 は あ る も の のフ レ ー ム ワ ー ク 構 造 が ち ょ っ と 面 白 か っ た の で 共 有
Djangoの概要
Django・ P y t h o n の W e b フ レ ー ム ワ ー ク
・ I n s t a g r a m , N A S A 等 で の 採 用 事 例
・ M V C
・ マ イ グ レ ー シ ョ ン ( 1 . 7 か ら 公 式 サ ポ ー ト の 模 様 )
・ 管 理 画 面 機 能 付 き
Dja ngo の 構造イ メ ージ
一 般 的 な 「 ア プ リ ケ ー シ ョ ン 」 の イ メ ー ジ
●●サーバ
●●サーバ
●●サーバ
アプリケーション→
D j a n g o で 言 う と こ ろ の「 ア プ リ ケ ー シ ョ ン 」 の イ メ ー ジ
← アプリケーション
← アプリケーション
← アプリケーション
コア部分
フレームワーク→
← アプリケーション
:
( 例 ) ブ ロ グ シ ス テ ム の 場 合
← 記事周りの機能
← コメント機能
← カテゴリ機能
コア部分
フレームワーク→
← 拍手ボタン等
:
D j a n g o で 言 う「 ア プ リ ケ ー シ ョ ン 」 と は
シ ス テ ム の 細 分 化 さ れ た 一 機 能 で あ る
1 . ア プ リ ケ ー シ ョ ン ご と に M V C の 構 造
← MVC
← MVC
← MVC
コア部分
フレームワーク→
← MVC
:
2 . ル ー テ ィ ン グ も 各 ア プ リ ケ ー シ ョ ン で 定 義し
コ ア 部 分 で 読 み 込 み
← urls.py
← urls.py
← urls.py
コア部分
フレームワーク→
← urls.py
:
urls.py
( 余 談 ) コ ア 部 分 で サ ブ デ ィ レ ク ト リ を 切 っ てR E S T f u l に し た り と か も 割 と 楽 に で き そ う
← index, new, edit, …
← index, new, edit, …
← index, new, edit, …
コア部分
フレームワーク→
← index, new, edit, …
:
urls.py
/a//b//c//d/
urls.py
urls.py
urls.py
urls.py
3 . マ イ グ レ ー シ ョ ン も サ ポ ー ト 。
コア部分
フレームワーク→
:
$ python manage.py makemigration [appname]$ python manage.py migrate
models.py
models.py
models.py
models.py
4 . テ ス ト も こ ん な 感 じ 。
コア部分
フレームワーク→
:
$ python manage.py test$ python functional_test.py
tests.py
tests.py
tests.py
tests.py
functional_tests.py
5 . ア プ リ ケ ー シ ョ ン の 追 加 もコ マ ン ド 一 つ で ら く ら く 。
d j a n g o - a d m i n . p y s t a r t a p p a p p
app/ admin.pymodels.pytests.pyurls.pyviews.py:
↓
システムの大規模化には比較的強そう( 可読性・保守性的な意味で )
ま と め
D j a n g o で い う ア プ リ ケ ー シ ョ ン= シ ス テ ム 全 体 の 一 機 能
そ れ ぞ れ が M V C 構 造 、 ル ー テ ィ ン グ 機 構 、テ ス ト 用 の 土 台 を 持 つ
ありが とうござ いまし た