最近Djangoプロジェクトをバージョン1.9にアップグレードしました。
migrate
を実行しようとすると、次の2つのエラーが発生します。
Support for string view arguments to url() is deprecated and will be removed in Django 1.10 (got app.views.about). Pass the callable instead.
Django.conf.urls.patterns() is deprecated and will be removed in Django 1.10. Update your urlpatterns to be a list of Django.conf.urls.url() instances instead.
誰かがこれを行う方法の正しい構文を私に見せてもらえますか?私の簡単なサンプルurls.py
は以下のとおりです。
urlpatterns = patterns('',
url(r'^about/$', 'app.views.about',
name='about'),
)
urlpatterns += patterns('accounts.views',
url(r'^signin/$', 'auth_login',
name='login'),
)
ありがとうございました!
ビューを直接インポートするか、ビューモジュールをインポートします。
from apps.views import about
from accounts import views as account_views
patterns
は使用せず、リストまたはタプルのみを使用してください。
urlpatterns = [
url(r'^about/$', about,
name='about'),
]
urlpatterns += [
url(r'^signin/$', account_views.auth_login,
name='login'),
]
ビュー名の前後の引用符を削除する必要があります。あなたのコードはそのようになります
urlpatterns = patterns('',
url(r'^about/$', app.views.about, #without quote!
name='about'),
)
ポイント2、リストを使用するので、コードは次のように変換されます
urlpatterns = [
url(r'^about/$', app.views.about, #without quote!
name='about'),
]