【Python/Django入門】Webアプリケーションの作成

Python用Webフレームワーク「Django」の使い方について入門者向けにまとめました。

【Djangoとは】インストール

Djangoとは、Pythonで実装されたWebアプリケーションフレームワークです。

Djangoの主な特徴
1 Pythonで実装されている(Pythonの強力な機械学習系ライブラリや数値計算ライブラリを使える)。
2 複雑なデータベース主体のWebサイトを簡単に構築可能。
3 Pythonなのでコートがわかりやすい
【人気比較】Django、Flask、Ruby on rails、Laravel、React
Webアプリケーション作成の人気フレームワークDjango、Flask、Ruby on rails、Laravel、Reactの人気を比較してみました。

MVTモデル

Djangoでは、他のWebフレームワークで一般的なMVCモデルとは少し違い、「MVTモデル」でアプリケーションを作成しす。
MVCモデルとはWebアプリケーションを「Model」「View」「Template」に分割してコーディングを行うモデルです。

項目 説明
Model データベースとの接続関連。アプリケーションのデータ、ビジネスルール、ロジック、関数を定義。
View 呼び出し制御。MVCモデルのC(Controller)に相当し、URLリクエストを振り分ける。MVCのVとは違うため注意。
Template ユーザーインタフェース。MVCモデルのV(View)相当。画面表示を担う。

また、他にも「Django Form」と呼ばれる入力データ制御用の機能もあります。

インストール

pip install django 
【Python】Djangoのインストール
Pythonモジュール「Django」のインストール方法についてまとめました。

【基本操作】プロジェクト作成~起動

今回は「C:\github\sample\python\django」内にプロジェクト(todo)を作成します。

$cd C:\github\sample\python\django
$ django-admin startproject todo
$cd todo 

以下のような構成のプロジェクトフォルダが生成されます。

todo/
    manage.py
    todo/
        __init__.py
        asgi.py
        settings.py
        urls.py
        wsgi.py

アプリを編集する上でよく弄るのは「models.py」「views.py」「tests.py」の3つのファイルです。

【Python/Django】プロジェクト作成
Pythonモジュール「Django」のプロジェクト作成方法についてまとめました。

以下のコマンドを実行します。

python manage.py runserver

② 以下のメッセージが表示されたら成功です。

Performing system checks...

System check identified no issues (0 silenced).

You have 14 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
May 22, 2018 - 19:48:30
Django version 2.0.5, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

ブラウザで「http://127.0.0.1:8000/」にアクセスすると下記のようなサイトが表示されます。

起動終了する場合はショートカットキー「Ctrl」 + 「C」を使います。

【Python/Django】サーバーの起動・終了
Pythonモジュール「Django」でサーバーを起動する方法についてまとめました。

【Django】汎用ビューについて

汎用ビューを使うと、ListViewのテンプレートには「モデル名_list」オブジェクトが渡されます。

画面 継承するクラス テンプレートファイル名
一覧画面 ListView アプリ名/モデル名_list.html
追加画面 CreateView アプリ名/モデル名_form.html
更新画面 UpdateView アプリ名/モデル名_form.html
削除画面 DeleteView アプリ名/モデル名_confirm_delete.html
詳細画面 DetailView アプリ名/モデル名_detail.html

【作成例】ToDOアプリ、掲示板

Djangoでアプリを作る流れを理解するには、まずTodoアプリを作成してみてください。

【Python/Django】ToDOアプリの作成
Python用Webフレームワーク「Django」の使い方について入門者向けにまとめました。

【その他】参考・関連ページ

参考文献 Django入門
【Python】Webスクレイピング入門・ライブラリ比較
Pythonを用いたWebスクレイピングと便利なライブラリの比較について入門者向けにまとめました。
【Python入門】使い方とサンプル集
Pythonとは、統計処理や機械学習、ディープラーニングといった数値計算分野を中心に幅広い用途で利用されている人気なプログラミング言語です。主な特徴として「効率のよい、短くて読みやすいコードを書きやすい」、「ライブラリが豊富なのでサクッと...
Python
西住工房

コメント

タイトルとURLをコピーしました