前回の続きで、Djangoについて学んでいきます。
今回は簡単なWebページを作成して表示させてみます。
Djangoの勉強内容は以下の本を参考にしています。
Python Django3超入門 (日本語) 単行本 – 2020/6/13 掌田 津耶乃 (著)
まずは、前回作成したプロジェクトの配下にアプリを作成します。
【アプリ作成】
以下のコマンドを実行します。
python manage.py startapp hello
コマンドを実行すると、プロジェクトは以下にhelloというフォルダが作成されます。
フォルダ構成は以下のようになります。
test@ubuntu:~/デスクトップ/Django/sample_app$ tree . ├── db.sqlite3 ├── hello │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py ├── manage.py └── sample_app ├── __init__.py ├── __pycache__ │ ├── __init__.cpython-38.pyc │ ├── settings.cpython-38.pyc │ ├── urls.cpython-38.pyc │ └── wsgi.cpython-38.pyc ├── asgi.py ├── settings.py ├── urls.py └── wsgi.py 4 directories, 18 files
【コードを書く】
それでは、実際にコードを書いていきます。
1.viesw.py
まず初めに編集するファイルは、helloフォルダの「views.py」です。
views.pyファイルは画面の表示に関する処理を書くファイルになります。
このファイルを開くと以下のコードがデフォルトで記載されています。
ファイル:sample_app>hello>views.py
from django.shortcuts import render # Create your views here.
それではこのファイルを編集して、テキストを表示する処理を書いてみます。
以下のように変更します。
from django.shortcuts import render from django.http import HttpResponse def index(request): return HttpResponse("Hello World!!")
このコードはWebページにプログラムでおなじみの「Hello World」を表示するプログラムです。
「HttpResponse」はWebブラウザでアクセスしてきたクライアントに送り返す内容をまとめたクラスです。
使い方は、「HttpResponse(送り返す内容)」というふうに書きます。
これでviews.pyは終わりです。
続いて、urls.pyを書き換えていきます。
2.urls.py
urls.pyというファイルは、URLを管理するためのものです。
ここに、特定のURLでアクセスしてきた時に、views.pyに書いた処理を実行させるようにコードを書いていきます。
ファイル:sample_app>sample_app>views.py
from django.contrib import admin from django.urls import path import hello.views as hello urlpatterns = [ path('admin/', admin.site.urls), path('hello/', hello.index), ]
ここでは、urlpatternsに「path」関数を追加しています。
追加した内容は「path(‘hello/’, hello.index),」でURLで「hello/」にアクセスした時に、hello内のindexを実行するという意味です。
hello内のindexとは、vies.pyに記載してるindex関数のことになります。
さて、これを実行してみます。
【実行してみる】
python manage.py runserver
ブラウザで以下にアクセスします。
http://localhost:8000/hello「Hello World!!」が表示されました。
以上で本日の内容は終わりです。
ありがとうございました。
コメント