アプリケーションを追加する (3/4)
作成:2017-12-16 10:29
更新:2018-01-30 20:51
更新:2018-01-30 20:51
■hello内のURLパターン設定
これでページに表示する処理はできましたが、これだけではまだ画面に何かを表示することはできません。どのアドレスにアクセスしたら、作成したビュー関数を呼び出し実行するかという「URLへの処理の割付」が必要なのです。これは一般にルーティングと呼ばれます。
このルーティングは、2つのファイルで行います。それはアプリケーション内の「urls.py」と、プロジェクトフォルダ(ここでは「djangoapp」フォルダ)内にある「urls.py」です。2つのurls.pyでルーティングを行うのです。
まず、アプリケーション側のルーティング処理から。「hello」フォルダ内にあるurls.pyを開き、下のリスト欄に挙げたような処理を記述して下さい。なお、「hello」内にurls.pyというファイルが見つからなかった場合は、新たに作成をして下さい。
いずれのファイルも共通するのは、「urlpatterns」という変数を定義している、という点です。ここには、以下のような形でURL情報を記述していきます。
わかりますか? 「path」という関数を使ってURL情報を設定していますね。これは、helloのurls.pyと、djangoappのurls.pyで少しだけ呼び出し方が違っているので注意して下さい。
・アプリケーションのurls.pyでのpath利用
第2引数は、指定したパスにアクセスをしたときに呼び出すビュー関数を指定します。ここでは、helloのindex関数ということで、hello.indexと指定してあります。第3引数は名前です。
このルーティングは、2つのファイルで行います。それはアプリケーション内の「urls.py」と、プロジェクトフォルダ(ここでは「djangoapp」フォルダ)内にある「urls.py」です。2つのurls.pyでルーティングを行うのです。
まず、アプリケーション側のルーティング処理から。「hello」フォルダ内にあるurls.pyを開き、下のリスト欄に挙げたような処理を記述して下さい。なお、「hello」内にurls.pyというファイルが見つからなかった場合は、新たに作成をして下さい。
■urlpatternsでURLを管理する
いずれのファイルも共通するのは、「urlpatterns」という変数を定義している、という点です。ここには、以下のような形でURL情報を記述していきます。
urlpatterns = [
path(○○),
path(○○),
……略……
]
わかりますか? 「path」という関数を使ってURL情報を設定していますね。これは、helloのurls.pyと、djangoappのurls.pyで少しだけ呼び出し方が違っているので注意して下さい。
・アプリケーションのurls.pyでのpath利用
path( 相対パス , 呼び出す関数 , name=名前 )第1引数には、割り当てるパスを指定します。ただし、これは「このアプリケーション内の相対パス」です。例えば、helloアプリケーションは、○○/hello/というURLで公開されるので、この/hello/より後のパスをここで指定します。
第2引数は、指定したパスにアクセスをしたときに呼び出すビュー関数を指定します。ここでは、helloのindex関数ということで、hello.indexと指定してあります。第3引数は名前です。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
# hello/urls.py の内容 from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
※関連コンテンツ