カテゴリ: Django 更新日: 2026/01/15

Djangoのurls.pyの仕組みを完全解説!pathとURLルーティングの基本を初心者向けにやさしく説明

Djangoのurls.py の仕組み(path/routeの基本)
Djangoのurls.py の仕組み(path/routeの基本)

先生と生徒の会話形式で理解しよう

生徒

「Djangoの勉強をしていたら、urls.py っていうファイルが出てきました。でも、何を書いているのか全然わかりません……」

先生

「urls.py は、Webサイトの『道案内』をする、とても大事なファイルなんですよ。」

生徒

「道案内、ですか?プログラミングなのに地図みたいですね。」

先生

「その感覚はとても大切です。URLと処理を結びつける仕組みを、順番に見ていきましょう。」

1. Djangoのurls.pyとは何か

1. Djangoのurls.pyとは何か
1. Djangoのurls.pyとは何か

Djangoの urls.py は、URLルーティングを設定するためのファイルです。URLルーティングとは、ブラウザからアクセスされたURLと、Django内部の処理を結びつける仕組みのことです。

例えば、Webブラウザで「/」にアクセスしたときと、「/about/」にアクセスしたときでは、表示したい画面が違います。その振り分けを行ってRememberingのが、urls.pyの役割です。

2. URLルーティングを身近な例で理解する

2. URLルーティングを身近な例で理解する
2. URLルーティングを身近な例で理解する

URLルーティングは、住所と目的地の関係に似ています。住所(URL)を見て、「この場所なら、この部屋に案内する」と決めるのがurls.pyです。

もし道案内がなければ、訪問者は迷ってしまいます。Djangoでは、その迷子を防ぐためにurls.pyが用意されています。

3. urls.pyの基本的な中身

3. urls.pyの基本的な中身
3. urls.pyの基本的な中身

urls.py には、URLの一覧と、それに対応する処理が書かれています。まずは、最も基本的な形を見てみましょう。


from django.urls import path
from . import views

この部分は、「URLを設定するための道具を使います」「処理は views.py に書いてあります」という宣言です。最初は意味が分からなくても問題ありません。

4. path関数の役割を理解する

4. path関数の役割を理解する
4. path関数の役割を理解する

Djangoでは、URLルーティングを設定するために path という関数を使います。pathは、「このURLが来たら、この処理を実行する」というルールを書くためのものです。


urlpatterns = [
    path('', views.index),
]

この例では、URLの最後が何も付いていない場合に、indexという処理を実行する、という意味になります。

5. route(URLパターン)の考え方

5. route(URLパターン)の考え方
5. route(URLパターン)の考え方

pathの最初の引数は「route」と呼ばれ、URLの形を表しています。例えば「hello/」と書くと、「/hello/」というURLになります。


urlpatterns = [
    path('hello/', views.hello),
]

これは、「/hello/ にアクセスされたら hello という処理を実行する」という意味です。URLと処理が一対一で結びついています。

6. views.pyとの関係をやさしく説明

6. views.pyとの関係をやさしく説明
6. views.pyとの関係をやさしく説明

urls.py は、どの処理を呼び出すかを決めるだけで、実際の中身は views.py に書かれています。views.py は、画面表示やデータの返却を担当します。


def hello(request):
    return "Hello Django"

urls.py が受付係、views.py が実際に対応するスタッフ、という関係だと考えると分かりやすいです。

7. URLが見つからないときに起きること

7. URLが見つからないときに起きること
7. URLが見つからないときに起きること

urls.py に書かれていないURLにアクセスすると、Djangoは「その道は知りません」と判断します。その結果、エラー画面が表示されます。


Page not found (404)

このエラーが出たときは、URLルーティングが正しく設定されているかを確認することが大切です。

8. 初心者がurls.pyで意識すべきポイント

8. 初心者がurls.pyで意識すべきポイント
8. 初心者がurls.pyで意識すべきポイント

urls.py は、Djangoの中でも特に重要なファイルの一つです。ただし、最初からすべてを理解しようとしなくて大丈夫です。

「URLと処理を結びつける場所」「pathでルールを書く」という2点を押さえておくだけで、学習はぐっと楽になります。

テキスト部分の文字数(全角の平仮名・カタカナ・漢字のみ、コード・HTML除外):約2820文字
カテゴリの一覧へ
新着記事
New1
Django
Djangoのurls.pyの仕組みを完全解説!pathとURLルーティングの基本を初心者向けにやさしく説明
New2
Flask
Flask×非同期処理で画像・動画処理を行う設計のポイントを完全解説|初心者向け非同期タスク管理
New3
Python
Pythonで過去の日付を取得する方法(timedeltaのマイナス活用)
New4
Python
Pythonとは何か?初心者向けにできること・特徴・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonで現在の日付・時刻を取得する方法(datetime.now() / today())
No.2
Java&Spring記事人気No2
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
No.3
Java&Spring記事人気No3
Flask
Flask-Loginでユーザー認証を完全ガイド!初心者でもわかるログイン処理の作り方
No.4
Java&Spring記事人気No4
Python
Pythonでリストを文字列に変換する方法を完全ガイド!初心者でもわかるjoinの使い方
No.5
Java&Spring記事人気No5
Python
Pythonの文字列から一部を抽出する方法!スライスを使った基本的な切り出し方
No.6
Java&Spring記事人気No6
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.7
Java&Spring記事人気No7
Python
Pythonとは何か?初心者向けにできること・特徴・インストール手順までやさしく解説
No.8
Java&Spring記事人気No8
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド