Djangoでのプロジェクトのスタート手順などをこの記事にまとめる。
なお、この記事ではWndowsでの開発を前提としている。
仮想環境の作成
仮想環境を構築したうえで、Djangoプロジェクトを作成する
開発用フォルダに移動
・コマンドプロンプトを起動
スタート画面で”CMD”と入力すると素早く開けます
・開発用フォルダに移動
1 |
cd フォルダパス |
開発用フォルダは、デスクトップ上でもそれ以外の場所でも、どこのフォルダでも良いです。
Djangoで複数のプロジェクトと、各プロジェクトにおけるアプリを作りたいので、「個人開発」のような名前にしています。
仮想環境の作成
仮想環境を作成します。色々なアプリを作ると、ライブラリ同士の相性によっては思った通りに動いてくれない場合があります。
仮想環境にライブラリをインストールすると、端末本体や、他の仮想環境に影響されなくなり、前述の問題を解消できます。
プロジェクトによって使用するライブラリも変わるので、仮想環境を使ってインストールするライブラリを管理しましょう。
まずは、プロジェクトフォルダの作成後、仮想環境を作ります。
・プロジェクトフォルダ作成
1 |
mkdir プロジェクト名 |
開発用フォルダの中にプロジェクトフォルダを作成します。
この後、プロジェクトフォルダの中でアプリケーションフォルダを作成します。
1つのプロジェクトに複数のアプリを作ることもあるかもしれません。
また、プロジェクトフォルダ名とアプリケーションフォルダ名は変えた方がわかりやすいです。
・プロジェクトフォルダへの移動
1 |
cd プロジェクト名 |
プロジェクトフォルダ作成後、そのプロジェクトフォルダにまずは移動します。
・venvで仮想環境の作成
1 |
python -m venv 仮想環境名 |
・仮想環境内のScriptsフォルダへ移動
1 |
cd 仮想環境名\Scripts |
※仮想環境を起動するには、Scriptsフォルダ内の「Activate」というファイルを実行する必要がある。
・仮想環境の起動
1 |
activate |
※この操作により、コマンドプロンプト上のフォルダ名が以下のようになる。
始めに(仮想環境名)とついていれば、仮想環境の起動に成功している
(仮想環境名)~~~\仮想環境名\Scripts
・Djangoインストール
1 |
(仮想環境名)pip install django |
・Djangoのインストール状況の確認
1 2 3 4 5 6 7 |
#pythonを起動 (仮想環境名)>python #djangoのバージョン確認 (仮想環境名)>>>import django (仮想環境名)>>>django.get_version() #4.1.0 などバージョン名が表示される |
Djangoでのプロジェクト作成
・開発用ディレクトリに移動
1 |
(仮想環境名)cd [開発用ディレクトリパス] |
現在は開発用ディレクトリ内の仮想環境用ディレクトリの中にいるので、開発用ディレクトリのトップまで戻る。
仮想環境は起動した状態のままで移動して良い。
・Djangoのプロジェクト作成
1 |
(仮想環境名)django-admin startproject [プロジェクト名] |
仮想環境はactivateで起動した状態で行う。
上記コマンドを実行すると、[プロジェクト名]で記載した名前のフォルダが作成される。
プロジェクトフォルダの中にさらにアプリケーションフォルダを作成するので、区別するためにこのフォルダはプロジェクトフォルダと呼ぶ。
フォルダ構成はこのようになる。
開発用ディレクトリ
├仮想環境フォルダ
│ └Scriptsフォルダ等
└プロジェクトフォルダ
├プロジェクトフォルダ
└manage.py
・言語設定
1 2 |
#プロジェクトフォルダ\プロジェクトフォルダ\setting.py LANGUAGE_CODE = 'ja' |
setting.py言語設定を日本語に変更する。
・タイムゾーン設定
1 2 |
#プロジェクトフォルダ\プロジェクトフォルダ\setting.py TIME_ZONE = 'Asia/Tokyo' |
・データベース作成
1 2 |
#プロジェクトフォルダ >python manage.py migrate |
manage.pyのあるフォルダへカレントディレクトリを移動してから実行
データベースを作成するコマンド
・試しに開発用サーバーで実行してみる
1 2 3 4 |
#プロジェクトフォルダ python manage.py runserver #Startig development server at http:~~ #Quit ther server with |
manage.pyのあるフォルダへ移動してから実行
“http~”の部分をコピーしてブラウザで検索。
以下のような画面が表示されればOK
アプリケーションの開発
アプリケーションの作成
・アプリケーションの作成
1 2 |
#ルートフォルダ python manage.py startapp アプリケーション名 |
※これでルートフォルダ内にアプリケーションフォルダが作成される
・アプリケーションの登録
1 2 3 4 5 6 7 8 9 10 |
#プロジェクトフォルダ\setting.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'アプリケーション名', #一番下に追加 ] |
※プロンプトにアプリケーションを登録する必要がある。
Templatesフォルダの作成
実際に表示するページを作成する準備を行う。
まずはhtmlファイルを保存するフォルダを作成する。
・アプリケーションフォルダへ移動
1 2 |
#ルートフォルダ >cd アプリケーションフォルダ |
・テンプレートフォルダの作成
1 2 |
#アプリケーションフォルダ >mkdir templates |
・テンプレートフォルダへ移動
1 2 |
#アプリケーションフォルダ cd templates |
・テンプレートフォルダ内にアプリケーション名に準拠したフォルダを作成
1 |
mkdir アプリケーション名 |
トップページの作成
1 2 |
#templatees\アプリケーション名 >type nul > index.html |
※トップページを表示するhtmlファイルを作成
この時点ではまだ表示はできないので後続の設定を行う。
Viewの作成
・views.pyの編集
1 2 3 4 5 6 |
#アプリケーションフォルダ\views.py from django.shortcuts import render # Create your views here. def index(request): return render(request, 'templatesフォルダ内のアプリケーション名/index.html') |
・利用者からのリクエストを受けて、templatesフォルダ内のindex.htmlファイルを返す関数を作成した。
・プロジェクトのURL設定
1 2 3 4 5 6 7 |
from django.contrib import admin from django.urls import path, include #includeを忘れずインポート urlpatterns = [ path('admin/', admin.site.urls), path('', include('アプリケーション名.urls')) #追加 ] |
※views.py内のindex関数を特定のURLと結び付けることで、ユーザーがそのURLを打ち込んだ時にindex.htmlファイルがブラウザ上で表示されるように設定。
アプリケーション名.urlsはこの後にアプリケーションフォルダ内で作成する。
・アプリケーションフォルダ内でurls.pyを作成
1 2 |
#アプリケーションフォルダ >type nul > urls.py |
※プロジェクトフォルダとアプリケーションフォルダのそれぞれにurls.pyが存在することになる。
コメント