あれもPython,これもPython

Pythonメモ※本サイトはアフィリエイトを利用しています

Cloud9でDjango入門(2_初期設定)

ProjectとApplication

Djangoでアプリケーションを作成する場合、
projectとappliationという単位が存在します。

django-admin.py startproject プロジェクト名
で作成されるのがプロジェクトであり、もっとも大きな一つのまとまりになります。

このプロジェクト内にあるmanage.pyを用いて、このプロジェクトの様々な設定を行っていきます。

プロジェクトに必要なテーブルとユーザの用意

python manage.py migrateを行うと、
DBにDjnagoに必要なテーブルが作成されます。
一番最初のmigrateDjangoのプロジェクトに必ず必要なテーブルが作成されます。
(データベースとの接続設定はsetting.pyの中に記述されています。デフォルトではsqliteと呼ばれるdbを使用します。)

また、python manage.py createsuperuserを行うと、
Djangoの管理ユーザを作成します。
ユーザ名、メールアドレス、パスワードの設定が行われます。

adminページ

管理ユーザが作成できたら、adminページにログイン可能になります。
adminページはDjangoの大きな特徴機能です。
adminページではプロジェクトの様々なデータの管理を行うことが可能です。
プロジェクト内に作成したアプリケーションのデータを確認だけではなく、追加、更新、削除することができます。

多くのwebアプリケーション開発では、こうしたデータの管理機能は標準搭載ではなく、
データベースクライアントで対応することが多くあります。

対してDjangoはadmin画面やORM、manage.py migrateによってSQLをほとんど排除しながら開発が可能になります。

また、管理画面は標準でも必要最小限の機能を要していますが、
拡張が可能であるため、ダッシュボードの追加なども可能となります。

python manage.py runserverを実行するとDjangoの開発用サーバが立ち上がります。
ここで表示されたURLに/adminを付け足すと、管理ページにアクセスが可能になります。
(たとえばlocalhost:8080ならlocalhost:8080/adminとします)

アプリケーションの追加

python manage.py startapp アプリ名を実行するとapplicationディレクトリが作成されます。

applicationは設計によって大きく変わりますが、
幾つかの機能の塊だと思って置けばよいでしょう。
(データドメインが一つの区切りかもしれません)

Djangoは、ProjectとApplicationという2つの単位を持つことによって、
自然と機能やデータの分割を進め、再活用を高めることを可能にしています。

Applicationはディレクトリによって分割され、
その中にそのApplicationのデータモデルや機能を記述します。
言い換えれば、このディレクトリごとコピーすることで、
その機能を他のDjangoプロジェクトに再利用することが可能になります。

次回から、このApplicationを実装し、webアプリケーションを作成していきます。

esu-ko.hatenablog.com