65
ImportError at /
No module named simple

Django Version: 1.5.dev20120710212642

最新のdjangoバージョンをインストールしました。使ってます

from django.views.generic.simple import redirect_to

私のurls.pyで。なにが問題ですか?非推奨ですか?

4

4 に答える 4

136

これらの関数ベースのジェネリックビューは非推奨になっているため、代わりにクラスベースのビューを使用してください。redirect_to

クラスベースのビューの使用法の簡単な例を次に示します。

from django.conf.urls import patterns, url, include
from django.views.generic import TemplateView

urlpatterns = patterns('',
    (r'^about/', TemplateView.as_view(template_name="about.html")),
)

アップデート

誰かがURLにリダイレクトしたい場合は、RedirectViewを使用してください。

from django.views.generic import RedirectView

urlpatterns = patterns('',
    (r'^one/$', RedirectView.as_view(url='/another/')),
)
于 2012-07-11T09:36:05.753 に答える
53

これはうまくいくはずです

from django.conf.urls import patterns
from django.views.generic import RedirectView

urlpatterns = patterns('',
    url(r'some-url', RedirectView.as_view(url='/another-url/'))
)
于 2012-12-20T03:39:42.013 に答える
6

はい、古い関数ベースの汎用ビューは1.4で非推奨になりました。代わりに、クラスベースのビューを使用してください。

于 2012-07-11T08:25:20.577 に答える
5

そして、記録のために(現在ドキュメントに関連する例はありません)、パラメーターでRedirectViewを使用するには:

from django.conf.urls import patterns, url
from django.views.generic import RedirectView


urlpatterns = patterns('',
    url(r'^myurl/(?P<my_id>\d+)$', RedirectView.as_view(url='/another_url/%(my_id)s/')),
)

\d+正規表現は数値( )を検索しますが、パラメーターは文字列()として渡されることに注意してください%(my_id)s

まだ不明なのは、での使用RedirectView方法template_nameですurls.py

于 2015-02-12T10:50:52.973 に答える