Python | Django | Viewを利用した複数のアプリケーション作成方法
公開日:2021/7/19
更新日:2021/7/21
Pythonには,DjangoというWebアプリケーションフレームワークがある.フレームワークのため,Djangoを利用するとWebアプリを通常よりも短時間で開発することが可能になる.
前記事にて,「Viewを利用したエラーページへの対処方法」を記した.前記事での設定をそのまま引き継いだ上で,本記事では,「Viewを利用した複数のアプリケーション作成」を以下にて記す.
◆実施環境
Python 3.8.8
Django 3.2.3
■Viewを利用した複数のアプリケーション作成
ターミナルを開き,”conda activate 仮想環境名”を実行し,仮想環境に移行する(移行方法の詳細はこちら).その後,"cd viewproject"を実行することによって,”viewproject”のディレクトリに移動し,”python manage.py startapp アプリ名”を実行する.アプリ名は,"user"とした.
(djangoenv) C:\Users\shiro\Desktop\210517_python development\myviewtest\viewproject
>python manage.py startapp user
プロジェクト"viewproject"の下に,アプリ"restaurant"があるが,今回作成したアプリ"user"が作成される.
“viewproject/settings.py"の"INSTALLED_APP"に今回作成したアプリ名"user"を以下のように追記する.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'restaurant',
'user' # 追記箇所
]
“viewproject/user"に以下のように"urls.py"を作成する.
“viewproject/user/urls.py"を以下のように編集する.
from django.urls import path
from . import views
app_name = 'user'
urlpatterns = [
path('user_list/', views.user_list, name='user_list'),
]
上記にて,"user_list"についてのコードを作成したので,"viewproject/user/views.py"に追記し,以下のように編集する.
from django.shortcuts import render
def user_list(request): # 以下追記箇所
return render(request, 'user/user_list.html')
上記にて,"user/user_list.html"についてのコードを作成したので,"templates"フォルダに,以下のように,"user"フォルダを作成し,その中に,"user_list.html"を作成する.
“viewproject/urls.py"に追記し,以下のように編集する.
from django.contrib import admin
from django.urls import path, include
from restaurant import views
urlpatterns = [
path('admin/', admin.site.urls),
path('restaurant/', include('restaurant.urls')),
path('user/', include('user.urls')), # 追記箇所
]
handler404 = views.error_404page
handler500 = views.error_500page
“viewproject/templates/user/user_list.html"を以下のように編集する.
<h2>登録者リスト</h2>
<a href="{% url 'restaurant:menu_list' %}">メニューリストへ!</a>
ターミナルを開き,”viewproject”のディレクトリにて,”python manage.py runserver”を実行する.以下内容が出力される.
(djangoenv) C:\Users\shiro\Desktop\210517_python development\myviewtest\viewproject
>python manage.py runserver
System check identified no issues (0 silenced). # 以下出力箇所
July 19, 2021 - 15:10:40
Django version 3.2.3, using settings 'viewproject.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
上記の"http://127.0.0.1:8000/"をクリックすると,ブラウザで以下が表示される.
上記にて設定した"http://127.0.0.1:8000/user/user_list"をブラウザのURLに入力すると,以下画面に遷移する.
上記の"メニューリストへ!"をクリックすると,以下メニューリストページに遷移する.
以上