はじめに
「PythonDjango4 超入門」の学習中、404エラーが発生してハマってしまいました・・・
解決してみれば単純なケアレスミスなんですが、書籍の通りに構築すると絶対に発生するようになっているので、備忘録&情報共有のために記事にします。
前提条件
以下の条件でURLを開くと、404エラーが発生します。
※書籍の記述通り。
①「http://localhost:8000/hello/create 」にアクセス。
②ルーティングは以下設定で実装。
<プロジェクト>\urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('hello/', include('hello.urls')),
]
Hello\urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('create', views.create, name='create'),
]
解決方法
結論から言うと、「<アプリ>/urls.py」のルーティング記法にミスがありました。
path関数の第一引数は、最後に「/(スラッシュ)」を入れる必要があります。
正しい記述法は以下になります。
Hello\urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('create/', views.create, name='create'),
]
修正してサーバを再起動すれば、「hello/create」に正しくアクセスできました。