2015-10-13 4 views
2

App1, содержащая формы, после того, как пользователь выполняет и отправляет форму, страница будет перенаправлять на «Результат», который определен в App2Джанго: перенаправление зрения другого приложения не правильно

def input(request): 

    if request.method == 'POST': 
     form = Inputform(request.POST) 
     if form.is_valid(): 

      cd = form.cleaned_data 
      print (cd['company']) 
      print (cd['region']) 
      return HttpResponseRedirect(reverse('result', args=(p.id,))) 

URL-адрес, как показано ниже :

urlpatterns = patterns('', 
    url(r'^result/$','result.views.resultlist',name='result'), 
    url(r'^input', 'inputform.views.input',name='input'), 

дело в том, если я бегу http://127.0.0.1:8000/result в браузере, она работает должным образом. Но как только я выполню форму и нажимаю кнопку «Отправить», страница будет перенаправлена ​​на: http://127.0.0.1:8000/result.html. И затем появляется ошибка: Текущий URL-адрес, result.html, не соответствует ни одному из них.

Любое предложение высоко ценится. Благодарю.

+0

Это странно, что http://127.0.0.1:8000/result работает, так что маршрут URL не определен в вашем urls.py. Он должен быть http://127.0.0.1:8000/result_list/ Просьба предоставить подробную информацию по urls.py – user1797792

+0

И, пожалуйста, покажите свой шаблон. Возможно, вы положили «result.html» в атрибут action? –

+0

Super @ Daniel, это как раз причина, спасибо много от новички ~~~ –

ответ

1

попробовать

return redirect('result', args=(p.id,)) 
+0

Спасибо, я попробовал, но та же ошибка есть. Почему в конце должен быть добавлен «.html»? –

+0

.html не следует добавлять. Вероятно, это перенаправляет вас на шаблон. Предоставьте дополнительную информацию о своем urls.py – user1797792

Смежные вопросы