Django完全入門ガイド|MTVの基本から認証・API・デプロイまで全ステップ解説

  • Djangoって何から始めればいいの?
  • MTVの構造がよくわからない
  • 認証やAPI連携、本番デプロイまで一通り学びたい

このような疑問にお答えします。

Djangoは、Pythonで書けるWebフレームワークです。モデル・認証・管理画面といった、Webアプリに必要な機能が最初から揃っています。

このガイドでは、Djangoの基本的な考え方から、実際に画面を表示するところまでをステップ順に解説します。
記事後半には、モデル・認証・API・デプロイなど、テーマ別の詳細ガイドへのロードマップも用意しました。「どこから学べばいいかわからない」という悩みは、これで解消できるはずです。

Djangoとは何か

Djangoは、Pythonで書かれたWebフレームワークです。データベースとのやり取り、URL設計、管理画面、認証など、Webアプリでほぼ必ず必要になる機能が標準で用意されています。

Djangoの設計はMTV(Model・Template・View)という3つの役割に分かれています。

要素役割
Modelデータベースの構造・データのやり取り
Template画面に表示するHTML
Viewリクエストを受けてModelとTemplateをつなぐ処理

一般的なMVCと呼び方が違うだけで、考え方はほぼ同じです。「データ」「画面」「つなぐ処理」の3つに分かれている、とだけ覚えておけば十分です。

なぜDjangoを選ぶのか

正直なところ、バックエンドの言語やフレームワークは、使い慣れたものを自由に選べばいいと思っています。他に慣れている言語があるなら、そちらで作っても何の問題もありません。

僕がDjangoを選んでいるのは、単純にPythonに慣れているからです。認証・管理画面・ORMといった機能が最初から揃っているので、Pythonが書けるなら学習コストは低めです。

Djangoを始める前の準備

環境構築の細かい手順は、後半のロードマップ内の記事にまとめています。ここでは全体の流れだけ押さえておきます。

大まかな流れは、仮想環境の作成 → Djangoのインストール → プロジェクトの作成 → アプリの作成の4ステップです。プロジェクトが「サイト全体の入れ物」、アプリが「機能ごとの部品」という関係になっています。

Djangoの基本的な考え方

僕自身、Djangoが最初に触ったWebフレームワークだったので、正直はじめは全部につまずきました。

中でも馴染めなかったのが、フレームワーク特有の「お作法」を、途中の理屈を全部理解する前に「そういうものだ」と割り切って受け入れることでした。「なぜこのファイルにこう書くのか」を最初から全部理解しようとすると、手が止まってしまいます。

Djangoには、settings.pyで設定を管理する、urls.pyでルーティングを書く、views.pyで処理を書く、といった「決まった置き場所」があります。まずはこの型をなぞって動かしてみて、理屈は後から追いつけばいいというくらいの気持ちで進めるのがおすすめです。

はじめての画面を表示してみよう

理屈の説明が続いたので、実際に画面を表示するところまでやってみましょう。urls.pyとviews.pyだけで完結する、最小構成の例です。

Python
# views.py
from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello, Django!")
Python
# urls.py
from django.urls import path
from . import views

urlpatterns = [
    path("hello/", views.hello),
]

「/hello/」にアクセスすると、views.pyのhello関数が呼ばれ、urls.pyがそのURLとの対応を管理する。これがDjangoのリクエスト処理の基本形です。実際のアプリではここにModelやTemplateが加わりますが、骨格はこの2ファイルの関係と変わりません。

Django学習ロードマップ

基本が掴めたら、次のステップに進みましょう。以下はCFXLOGのDjango関連記事一覧です。テーマ別にまとめているので、気になるテーマから読み進めてください。

Step 1:プロジェクトを立ち上げる

Step 2:モデル・データベースを扱う

Step 3:ビュー・URLルーティングを書く

Step 4:認証を実装する

Step 5:テンプレート・フロントと繋ぐ

Step 6:REST APIを公開する

Step 7:テストを書く

Step 8:運用を効率化する

Step 9:本番にデプロイする

こんなことをしたい → どの記事を読む?逆引きナビ

「困りごとは決まっているけど、どこから読めばいいかわからない」という方向けに、トラブル対応系の記事をまとめました。

開発サーバーが「ポートが使用中」と言われる

リダイレクトの実装で迷っている

ローカル環境を外部に一時公開したい

まとめ

Djangoは、モデル・認証・管理画面といったWebアプリの土台がひと通り揃ったフレームワークです。このガイドで学んだことをまとめると、次のとおりです。

  • DjangoはModel・Template・Viewの3役割で構成される
  • 言語・フレームワークは使い慣れたものを選べばよく、Djangoである必然性は特にない
  • フレームワーク特有の「お作法」は、理屈より先に一旦受け入れて動かしてみるのが近道
  • urls.pyとviews.pyの対応関係が、Djangoのリクエスト処理の骨格
  • 各テーマの詳細は上のロードマップから学べる

実際に触ってみると、Djangoって意外と簡単だと感じてもらえるはずです。まずはプロジェクトを立ち上げるところから始めてみてください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

普段は主にPython開発をしています。
最近はAI駆動開発にも関わっています。

コメント

コメントする