Django学習

【Python】Djangoプロジェクト作成とHello Worldまでの初期設定

Djangoの学習 プロジェクト作成と初期設定

1.Djangoをインストール

 

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 = 'en-us'
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', # 追加
]

 

場所
project_name > project_name > urls.py

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に表示したいところ。

【Python】DjangoでBootstrapの導入とベーステンプレートの解説Djangoの学習 Bootstrapの導入 https://prcmyself.com/first-django-step-1 1...