Ошибка "нет модуля с именем simple" в Django



ImportError at /
No module named simple

Django Version: 1.5.dev20120710212642


Я установил последнюю версию django. Я использую



from django.views.generic.simple import redirect_to


в моем urls.py-что случилось? Это устарело?

465   4  

4 ответов:

использовать представления на основе классов вместо 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/')),
)

это должно работать

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

urlpatterns = patterns('',
    url(r'some-url', RedirectView.as_view(url='/another-url/'))
)

да, старые общие представления на основе функций были устаревшими в 1.4. Вместо этого используйте представления на основе классов.

и для записи (нет соответствующего примера в настоящее время в документации), чтобы использовать 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.

Comments

    Ничего не найдено.