Ошибка "Нет модуля с именем simple" в Django ImportError at / No module named simple Django Version: 1.5.dev20120710212642 Я установил последнюю версию django. Я использую from django.views.generic.simple import redirect_to в моем urls.py. Что не так? Это устарело? Ответ 1 Используйте представления класса вместо 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/')), ) Ответ 2 это должно работать from django.conf.urls import patterns from django.views.generic import RedirectView urlpatterns = patterns('', url(r'some-url', RedirectView.as_view(url='/another-url/')) ) Ответ 3 Да, старые стандартные представления на основе функций были устаревшими в 1.4. Вместо этого используйте представления класса. Ответ 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.
Ответ 1 Используйте представления класса вместо 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/')), )
Ответ 2 это должно работать from django.conf.urls import patterns from django.views.generic import RedirectView urlpatterns = patterns('', url(r'some-url', RedirectView.as_view(url='/another-url/')) )
Ответ 3 Да, старые стандартные представления на основе функций были устаревшими в 1.4. Вместо этого используйте представления класса.
Ответ 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.