Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

ルーティングでこける Udemy 【3日でできる】はじめての Django 入門

More than 1 year has passed since last update.

はじめに

レクチャー21でルーティングの設定をするのですが、私が講座と違うバージョンのDjango(2系)を使っているためちょっとハマりました。

これから【3日でできる】はじめての Django 入門 ( Python 3 でウェブアプリを作って AWS EC2 で公開!)を学ぶ方の中にも僕と同じ進め方をする方もいると思うので、共有します。

起こったこと

http://127.0.0.1:8000/posts/」にアクセスするも404エラーとなる。
ログに警告

WARNINGS:
?: (2_0.W001) Your URL pattern '^$' [name='index'] has a route that contains '(?P<', begins with a '^', or ends with a '$'. This was likely an oversight when migrating to django.urls.path().

が吐かれていたので、多分正規表現が混ざる記述がまずかったのだろう。。。

僕の場合、諸悪の根源がこいつ↓でした

urls.py(posts配下)
from django.urls import path

from . import views

urlpatterns = [
    path(r'^$',views.index, name='index')
      ↑
     「Regular Expressions」=正規表現で使う「r」
]

正しくは(理解しきれていないので、正確に表現するならば「動作させるには」というべきかもしれない)

urls.py(posts配下)
from django.urls import path

from . import views

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

その他のファイル状況は基本的に動画と同じ
urlではなくpathを用いているものとして

urls.py(myblogapp配下)
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls) ,
    path('posts/', include('posts.urls') )
]

も掲載しておきます。

Eita11
経産省主催『始動 Next Innovator 2018』シリコンバレー選抜 現在の職業:某ライブ配信スタートアップCTOの弟子 以前の職業:経営者 私立文系未経験にもかかわらずエンジニアとして採用された経験を持つ人間がメモ代わりに書いています。 PHP/HTML/CSS/JavaScript/MySQL/Java/Ruby/Kotlin/UiPath
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away