Форум сайта python.su
Добрый день! Есть два представления: http://pastebin.com/raw/FZE2pwUr , и два шаблона: http://pastebin.com/raw/RRG2cyjx . Почему views.contact генерирует этот ‘URL “/contact/contact”, а не “contact/thanks” который передан в HttpResponseRedirect? Вот конфигурация урлов на всякий случай:
url(r’^contact/thanks$', ‘main.views.contact_thanks’),
url(r'^contact/$', ‘main.views.contact’),
Офлайн
dmitry_sulin
Так вообще не надо делать. Хардкодить вообще ничего не нужно, а пути и УРЛы тем более.
Почитайте https://docs.djangoproject.com/en/1.10/topics/http/urls/#reverse-resolution-of-urls и сделайте лучше правильно. Тем более, что реверс всяко решит вашу проблему.
Офлайн
FishHookНа самом деле, это пример из учебника. Просто интересно узнать почему не работает. За ссылку спасибо
dmitry_sulinТак вообще не надо делать. Хардкодить вообще ничего не нужно, а пути и УРЛы тем более. Почитайте https://docs.djangoproject.com/en/1.10/topics/http/urls/#reverse-resolution-of-urls и сделайте лучше правильно. Тем более, что реверс всяко решит вашу проблему.
Офлайн
Здесь также крайне рекомендуется использовать django формы, здесь есть пример использования.
Кроме того, во views.contacts в шаблон contact_form будет всегда передаваться пустой массив errors, а если и errors заполнится, то эта ветвь (при пост-запросе) закончится редиректом и errors, фактически, зря заполнялся.
Офлайн