2017-06-05 6 views
1

Djangoのドキュメントは、このような例を示します:special_case_2003myapp/views.py内の関数の名前であるDjangoのURLディスパッチャーは文字列を使用して関数を指定します。なぜですか?

from django.conf.urls import url 

urlpatterns = [ 
    url(r'^articles/2003/$', 'myapp.views.special_case_2003'), 

] 

from django.conf.urls import url 

from . import views 

urlpatterns = [ 
    url(r'^articles/2003/$', views.special_case_2003), 

] 

しかし、私はこのようになりますいくつかのコードを見てきました。 これらの2つのアプローチの違いは何ですか?

答えて

2
urlpatterns = [ 
    url(r'^articles/2003/$', 'myapp.views.special_case_2003'), 
] 

このようなコードは古くなっています。このような文字列としてビューを提供するとis deprecated in Django 1.8does not work in Django 1.10+です。 Django 1.10以降では、呼び出し可能関数を使用する必要があります。

+0

文字列を 'include'でも使うことはできます –

関連する問題