Django(ジャンゴ)の使い方も知りたいけど、良い情報ないかなぁ......
Django(ジャンゴ)について調べていても学習者向けの記事しかなく、わかりやすく説明しているものが少ないと感じませんか?あまり知られていないDjangoは、初心者向けの情報が少ないんですよね。
DjangoとはPythonでWebアプリを開発する際に使うWebフレームワークというものです。
今回は、Pythonで注目されているWebフレームワークのDjangoについて、初心者にも分かるように専門用語はなるべく使わずに説明していきます!
この記事を読んでいただければ、初心者でもWebフレームワークやDjangoについて理解できるようになりますよ!
この記事の目次
PythonのDjango(ジャンゴ)について知る前に
PythonのWebフレームワークを使うためには、まずPythonとWebフレームワークについて知っておかなければなりません。
そこで、Djangoの紹介をする前に前提として、PythonとWebフレームワークについて解説します。
Pythonとは
特に人工知能で使われている技術の機械学習が注目されてから、科学、教育、ゲーム、データ解析などの様々な分野で活用されています。日本でもPythonの仕事も増えてきており、これからも間違いなく伸びていくでしょう。
Pythonに関してはこちらの記事を読んでいただければ、特徴をつかむことができます。

Webフレームワークとは
Webフレームワークとは、Webアプリ開発をする際に、開発の効率を上げるために便利な機能がたくさん詰まったツールです。
そもそも、フレームワークが様々なシステムの開発を効率化してくれる機能の集まりのことで、そのWeb版ととらえてよいでしょう。
現代の開発では、他社との競争に伴って開発のスピードが求められています。このことからアプリ開発の効率を上げることができるフレームワークの利用はもはや当たり前となっています。
PythonのWebフレームワークはDjango以外にも他に種類があるので次の記事も合わせてご覧いただくといいでしょう。

PythonのDjangoとは
Djangoを使うことで、高品質なWebアプリケーションを簡単に、少ないコードで作成することができます。シンプルなWebアプリであれば、数分で作ってしまうことも可能です。
また、DjangoではInstagramやPinterestなどのよく知られたWebアプリでも動いています。
PythonのDjangoの特徴
全部入り
Webアプリ開発でよく使われる、「ユーザー認証」「管理画面」「サイトの案内ぺージ」「RSSフィード」など、よく使われる機能はあらかじめ含まれています。
セキュリティが安心
たくさんの共通する脅威に対して対策が施されています。ユーザー認証システムでは、ユーザーのアカウントとパスワードを安全に管理する方法が提供されてします。
拡張性、柔軟性が高い
Djangoで扱う各ファイルは役割が決まっており、別々に切り分けて開発を行うことができます。
よって、それぞれ部品の独立性が高く、拡張することが容易になっています。どんな規模のWEBアプリでも、柔軟に対応できるのです。
用途が広い
Djangoは、会社や組織、そして政府にも利用されています。管理システム、ソーシャルネットワーク、科学技術計算など幅広い用途に対応しています。
PythonのDjangoのメリット
生産性が高く、信頼できる
開発スピードは、「締め切りの味方である完全主義者」のモチーフが掲げられているほどです。アプリ開発ではスケージュル通りにいかず遅れてしまうことも多いのですが、Djangoは締め切りに間に合わせる完全主義者を謳っています。
また、オープンソースなので、世界中の開発者によって日々盛んに改良されており、どんどん使いやすくなっています。先程解説した、InstagramやPinterestもDjangoで作られているので、信頼性についても安心して使うことが出来ます。
実用性が高い
現在の開発方法に合致しており、非常に実用的です。Webアプリを新しく開発する際には、まずはじめに「開発にはどれぐらいの期間がかかりそうか」などの情報を得るために、模型を作って試験を行うことが多いです。
この模型を作って試験を行うことをプロトタイプといいます。Djangoはこのプロトタイプを作ることが簡単なので、開発期間を短くすることができるのです。

PythonのDjangoのインストール
Djangoについての概要を知れたところで、ここからは実際にDjangoをインストールしてみましょう!Djangoのインストール前に、まずはPythonの環境を確認する必要があります。Pythonのバージョン確認はこちらのコマンドを実行します。
python -V
2018年現在のPythonの最新版はバージョン3.6.3になります。基本的にPythonが入っていれば大丈夫ですが、古いバージョンではサポートが終了されていることもありますので、できるだけ最新バージョンを入れておきましょう。
Djangoのインストールについては、こちらの記事で詳しく解説しています!

※バージョン情報が表示されない場合はPythonがインストールされていない可能性がありますので、こちらの記事を参考にインストールしてください。

【超入門】PythonのDjangoをまずは使ってみよう
ここからは、Djangoを実際に使ってページを作る手順を、以下の流れで解説します。
- 手順1:Djangoのインストール確認
- 手順2:Djangoの新規プロジェクト作成・画面の確認
- 手順3:設定を変更
- 手順4:新しいページの作成
手順1:Djangoのインストール確認
まずは以下のコマンドを実行して、Djangoのインストールができているか確認してみましょう。
コマンド:
python import django print(django.get_version())
正しくインストールされていると、以下のようにバージョンが表示されます。
実行画面:
これで確認はOKです!「exit()」コマンドを実行して、いったん閉じましょう。
手順2:Djangoの新規プロジェクト作成・画面の確認
次に、Djangoで新規プロジェクトを作成します。以下のコマンドを実行して、作成しましょう。
コマンド:
django-admin startproject testPj
この例では、「testPj」という名前のプロジェクトを作成しています。コマンドを実行すると、以下のように「testPj」フォルダが作成されます。
無事に作成できたか確認するために、一度実行して確認してみましょう。実行するときは、作成したプロジェクトフォルダに移動してから、コマンドを実行します。
cdコマンドで移動:
cd testPj
Djangoプロジェクトを実行:
python manage.py runserver
コマンド実行のイメージ:
上記のようにURLが表示されるので、ブラウザ貼り付けてみましょう。以下のような画面が表示されれば、Djangoでプロジェクト作成ができています。
手順3:設定を変更
ここからは、新しいページを作る手順を解説します。まずは、プロジェクトフォルダに「templates」フォルダを新しく作りましょう。
「templates」フォルダは、HTMLファイルを置くところです。
ちなみにここではtemplatesフォルダのみ作っていますが、画像やCSS(デザインファイル)をおく「static」ファイルを作るのが、一般的です。実際に開発するときは、staticフォルダも作りましょう。
作成できたら、設定ファイルを更新していきましょう。設定ファイルは「settings.py」です。
testPj/testPjの下にあります。まずは言語とタイムゾーンを、変更していきましょう。
変更内容:
LANGUAGE_CODE = 'ja' TIME_ZONE = 'Asia/Tokyo'
変更箇所:
次に、先ほど作成したtemplatesフォルダを、HTMLファイルを置く場所に指定します。
変更内容:
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [ os.path.join(BASE_DIR, 'templates'), ], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ]
変更箇所:
これで、設定はOKです。
手順4:新しいページの作成
次に、新しいページを作成していきましょう。今回は、「test.py」ファイルを作成し、以下のコードを入力してください。
新しいページの作成場所:
サンプルコード:
from django.shortcuts import render def test(request): return render(request, 'test.html')
ここでは、「test.pyファイルが実行されたら、『test.html』を開いてください!」といった内容のコードを書いています。次に、「http://localhost:8000/test/」のURLを開いたときに、「test.py」が実行される設定をしていきましょう。
URLを開いたときに実行される処理は、「urls.py」で管理しています。「urls.py」を開いて、以下のように追記しましょう。
urls.pyの修正後のコード:
from django.contrib import admin from django.urls import path from . import test urlpatterns = [ path('admin/', admin.site.urls), path('test/', test.test, name='test'), ]
変更できたら、HTMLファイルを作成しましょう。templatesフォルダに「test.html」ファイルを作成し、以下のようなサンプルコードを入力します。
test.htmlの場所:
「test.html」ファイルのサンプルコード:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>はじめてのDjangoアプリ</title> </head> <body> <h1>Djangoで新しいページ作成</h1> </body> </html>
入力したら、保存します。保存できたので、コマンドプロンプトを開いて再度実行してみましょう。
実行のコード:
python manage.py runserver
実行後の画面:
表示されているURLに「/test/」を付けたURL(ここでは「http://localhost:8000/test/」)をつかって、ブラウザで開いてみましょう。次のように画面が表示されれば、OKです。
これで、新しいページを作ることができました。このように、簡単にページを作ることができます。
ただ、Djangoには色々覚えておくと便利な考え方や、使い方が多いです。まずは以下を見つつ、基礎的な使い方を覚えていきましょう。




Djangoを使いこなすために知っておくべき知識とは?
Djangoで本格的にWeb開発をするときは、以下のような知識も必要となってきます。
- 管理サイト
- データベース
管理サイト
1つ目は、管理サイトです。Webアプリを開発するときは、ユーザーが使う画面以外に、データを管理する画面「管理サイト」を作ります。
「でも、データの管理ならプログラムやデータベースを直接操作しても、変更できるのでは?」と思った方もいるかもしれませんね。
管理サイトを用意する理由は、アプリを運営する管理者が、必ずしもプログラミングに詳しいとは限らないからです。プログラミングがわからない人でもデータを管理できるよう、専用の画面を用意するイメージです。
Djangoでは、管理サイトを作りやすくするための機能があります。以下で詳しく解説しているので、ぜひ参考にしてみてくださいね。

データベース操作
2つ目は、データベース操作です。アプリ開発をする上では、データを扱うことは必須となります。
そしてデータを扱うときは、データベースを使うのが一般的です。そのため、データベースの操作についても、覚えておきましょう。
データベースそのものの意味については、以下で詳しく解説しているので参考にしてみてください。

Djangoでデータベース操作する基本については、以下で詳しく解説しています。データベースの基礎を見てから、手を動かしながらコードを書いてみるのがおすすめです!

効率的に学習を進めるなら
難しそうだし、挫折したらやだな…。
ここまでDjangoについて解説してきましたが、上記のような悩みを持っている方も多いですよね。
そんな方には、弊社が運営するサブスク型のプログラミングスクール「SAMURAI TERAKOYA」がおすすめです。
月額2980円(税別)で、主に4つのサービスを提供させていただきます。
- 平均回答時間30分の「Q&Aサービス」
- 作りながら学べる28種類の「教材」
- 学習を記録&仲間と共有できる「学習ログ」
目的にあった教材を選べば、どなたでも効率よく学習できるほか、Q&Aサービスやマンツーマン指導を活用することで、挫折せずにPythonを学ぶことができます。
Djangoを効率的に学びたい人はもちろん、何から始めたらよいのかわからない方は、ぜひ「SAMURAI TERAKOYA」をご利用ください。
まとめ
いかがでしたでしょうか?Djangoは非常に有用なWebフレームワークです。使う前には、やはりどんな特徴があるか知ってから学習に入るべきですよね。
今回は、これらのことについて初心者の方でも分かるように専門用語はなるべく使わずに説明させていただきました!
- Pythonとは何か
- Djangoとは何か
- Djangoの特徴とメリット
- Djangoのインストール方法
- Djangoで新しいページを作って動かす方法
- Djangoを使いこなすために知っておくべき知識
この記事であなたも今日からDjangoの学習を取り組むことができます。少しでも興味が湧いてきたのであれば、Django学習の第一歩を踏み出してみては?
ということで、お読みいただきありがとうございました!少しでもあなたの学習のキッカケになってくれれば嬉しいです。