Djangoを勉強してみる(入門編その2)

django-339744_640.png Django

前回の続きで、Djangoについて学んでいきます。

今回は簡単なWebページを作成して表示させてみます。

Djangoの勉強内容は以下の本を参考にしています。

Python Django3超入門 (日本語) 単行本 – 2020/6/13 掌田 津耶乃 (著)

まずは、前回作成したプロジェクトの配下にアプリを作成します。

Djangoを勉強してみる(入門編)

【アプリ作成】

以下のコマンドを実行します。

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!!」が表示されました。

以上で本日の内容は終わりです。

ありがとうございました。

コメント

タイトルとURLをコピーしました