urls.pyを理解するためには、3つのことを覚えておけばOK
さて、じゃあurls.pyで覚えること3つを話していこうか。

Djangoのurls.pyを理解するならこの3つを覚えよう

  1. urls.pyで使うpathの基本的な形
  2. Project(プロジェクト)とApp(アプリ)のurls.pyの違い
  3. urls.pyのnameはいったいどこで使うのか?

#1- urls.pyで使うpathの基本的な形

path('myapp/', include(myapp.urls))

or

path('home/', views.home, name='home')

まず、pathの使いかたは2つあるんだよね。
myappのほうは、プロジェクトで使うpathのコード。
homeのほうはアプリケーションを作ったときに使うコードだね。

#2- Project(プロジェクト)とApp(アプリ)のurls.pyの違い

プロジェクトアプリを読み込むため
アプリviews.pyのdefかclassとつなげるため

プロジェクトでは基本的にアプリケーションを読み込むためだけに使うって覚えれば大丈夫。

アプリの場合はviews.pyのdefかclassとつなげるためにコードを書く感じだね。

#3- urls.pyのnameはいったいどこで使うのか?

  • redirect
  • aタグ

URLの代わりに使うのがnameだね、たとえばnameがtop-pageだった場合。

path('home/', views.home, name='top-page')

hrefのURLをいれる代わりにnameの『top-page』が入ってるよね。

<a href="{% url 'top-page' %}">Return TopPage</a>

そうすると、URL(home/)→URL(top-page/)に変更してもリンクは変更しないですむから修正するのがラク。

リンクに使うときは『"{% url 'リンクしたいname' %}"』をURLの代わりにシングルクォーテーションの中にいれればOK。

Djangoのurls.pyを理解してアプリ作成をラクに

  • urls.pyは基本ProjectとAppで使う
  • Projectはアプリを読み込む、Appはviews.pyのdefとclassを読み込む
  • URLはnameを使おう

ってことで3つを覚えておけばurls.pyは上手く使えるようになるよ。

ルーティングっていうURLを決める大事な機能。
間違っちゃうとWEBアプリが表示されなくなるから気を付けて。

人気記事【必読】"見やすく修正しやすいコード"につながる本『リーダブルコード』