-
URLconf *
-
404や500等のエラーハンドラの指定方法 *
urls.pyにhandler404やhandler500をセットする。 -
urlのpattern r’^foo/?(?P
\d+)?/?$' -
redirect(“namespace:name”, foo=bar)とかできる *
-
namespaceとapp_nameからurlを生成するにはreverseを利用する
-
HttpRequestオブジェクトからnamespaceやnameを取得するにはHttpRequest.resolver_matchを利用する。
ResolverMatchが格納されている。 -
ResolverMatch.view_nameはnamespaceとnameが:で結合されたものが入っている
-
slugとかintとか *
-
pathとかre_pathとか *
-
include()の例 *
-
include()はnamespaceをセットする
-
re_path()はnameをセットする
url()は将来非推奨になるのでre_path()を使う - namespaceを設定するにはapp_nameを設定する必要がある *
- APPEND_SLASHがTrue(defaultはTrue)の場合、urlの最後に/がない場合でマッチしない場合はurlの最後に/を付けてリダイレクトする
from django.conf.urls import include, url
urlpatterns = [
url(r’^$’, index, name=’index’)),
url(r’^foo/’, include(foo.urls, namespace=’foo’)),
url(r’^bar/(?P
{% url ‘namespace:name’ param %}