Djangoの学習 プロジェクト作成と初期設定
1.Djangoをインストール
Djangoのドキュメント
https://docs.djangoproject.com/ja/3.0/topics/install/
2.Djangoのプロジェクトとアプリを作成する

・ cd desktop
ファイルを作りたい場所に移動する
・django-admin startproject プロジェクト名
今回はproject_nameというプロジェクト名です。
プロジェクトを作成します。
※djangoのあとはスペースを入れずに、django-adminにすること。
・cd project_name
作成したプロジェクトフォルダの中へ移動する
・python manage.py startapp app_name
プロジェクトの中にアプリを作成する。今回は app_nameというアプリ名にした。
3.プロジェクトとアプリの設定を行う
1.ファイル名とフォルダを手動で追加する
以下のようにファイル名とフォルダを追加します。
・project_nameフォルダの直下に「static」フォルダを作成。(app_nameと同列)
・staticフォルダの直下に「css」フォルダを作成。
・staticフォルダの直下に「js」フォルダを作成。
※フォルダの中は空でOK

app_nameフォルダの直下に「templates」フォルダを作成
templatesフォルダの直下に「index.html」ファイルを作成
app_nameフォルダの直下に「forms.py」ファイルを作成
app_nameフォルダの直下に「urls.py」ファイルを作成
※index.html forms.py urls.pyはそれぞれ空でOK
2.コードを修正する
場所
project_name > project_name > setting.py
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'UTC'
TIME_ZONE = 'Asia/Tokyo'
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app_name', # 追加
]
from django.contrib import admin
from django.urls import path
from django.urls import include # 追加
urlpatterns = [
path('admin/', admin.site.urls),
path('app_name/',include('app_name.urls')), #追加
]
場所
project_name > app_name > urls.py
from django.urls import path
from . import views
urlpatterns = [
path('',views.index, name='index'),
]
project_name > app_name > views.py
from django.shortcuts import render
from django.http import HttpResponse #追加
from django.shortcuts import redirect #追加
def index(request):
params = {
'title': 'app_name',
'msg' : 'message',
}
return render(request, 'index.html',params)
場所
project_name > app_name > templates > index.html
<!DOCTYPE html>
<html lang='ja'>
<head>
<meta charset="utf-8">
<title>{{title}}</title>
</head>
<body>
<h2>Hello World</h2>
<p>test</p>
<p>{{msg}}</p>
</body>
</html>
3.ブラウザで確認
コマンドを立ち上げて、以下のような手順でrunserverを立ち上げて
URLをブラウザへコピペする。
ブラウザで確認すると以下のようになる。
4.応用してみる
views.pyを以下のように書き換えてみる。
from django.shortcuts import render
from django.http import HttpResponse
from django.shortcuts import redirect
def index(request):
num1 =1
num2 =2
num3 = num1 + num2
params = {
'title': 'app_name',
'num1' : num1,
'num2' : num2,
'num3': num3,
}
return render(request, 'index.html',params)これをブラウザで表示させると、以下のようになる。
num1+num2 = num3が表示されている。
計算結果である、num3が表示されている。
しかし本来であれば、num1もnum2もブラウザで入力して、その値を受け取ってnum3に表示したいところ。












