[urls.py設定テクニック]urls.pyの3種類の配置の書き方
2673 ワード
注:以下の内容は現代魔法学院のウェブサイトurlsから転載します.pyの3つの構成の書き方は1文で、学習にのみ使用されます.
urls.pyの配置の書き方には一般的に3つの方法があります.
1. 1つ目は、The Django Bookのサンプルの書き方です.
2. 2つ目の方法はビュー処理方法で、コードを見て何が起こっているのか分かります.
3. 3つ目は、モデルとビューを接頭辞に書くことです.
大同小異.
詳細なコードのまとめを次に示します.
urls.pyの配置の書き方には一般的に3つの方法があります.
1. 1つ目は、The Django Bookのサンプルの書き方です.
from blog.views import index
url(r'^nowamagic/', index)
2. 2つ目の方法はビュー処理方法で、コードを見て何が起こっているのか分かります.
url(r'^nowamagic/', 'test.views.index')
3. 3つ目は、モデルとビューを接頭辞に書くことです.
urlpatterns = patterns('blog.views',
url(r'^nowamagic$', 'index' )
url(r'^nowamagic/\d{2}/$', 'index')
url(r'^nowamagic/(?P\d{2})/$', 'index' )
大同小異.
詳細なコードのまとめを次に示します.
from django.conf.urls.defaults import *
urlpatterns = patterns('',
# test_client modeltest urls
(r'^test_client/', include('modeltests.test_client.urls')),
(r'^test_client_regress/', include('regressiontests.test_client_regress.urls')),
# File upload test views
(r'^file_uploads/', include('regressiontests.file_uploads.urls')),
# Always provide the auth system login and logout views
(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}),
(r'^accounts/logout/$', 'django.contrib.auth.views.logout'),
# test urlconf for {% url %} template tag
(r'^url_tag/', include('regressiontests.templates.urls')),
# django built-in views
(r'^views/', include('regressiontests.views.urls')),
# test urlconf for middleware tests
(r'^middleware/', include('regressiontests.middleware.urls')),
# admin view tests
(r'^test_admin/', include('regressiontests.admin_views.urls')),
(r'^generic_inline_admin/', include('regressiontests.generic_inline_admin.urls')),
# admin widget tests
(r'widget_admin/', include('regressiontests.admin_widgets.urls')),
(r'^utils/', include('regressiontests.utils.urls')),
# test urlconf for syndication tests
(r'^syndication/', include('regressiontests.syndication.urls')),
# conditional get views
(r'condition/', include('regressiontests.conditional_processing.urls')),
# middleware exceptions tests
(r'middleware_exceptions/', include('regressiontests.middleware_exceptions.urls')),
# special headers views
(r'special_headers/', include('regressiontests.special_headers.urls')),
)