2017-03-08 9 views
0

現在、ページ上で質問を完了できるようにしようとしていますが、次のページが読み込まれるときにデータベースに送信されます。さらに、私がテンプレートフォルダの方に向けるたびに、新しいHTMLページを見つけることができないことを意味するオリジナルのものをピギーバックしています。第2ビュー機能を開始できません

私の考えは、question1が完了すると、def2のコードが実行される質問2にリンクします。しかし、フォームは正しく表示されません、私は正しく動作していないdef質問2のためだと思う。

def question1(request): 
    question_form1 = QuestionForm1() 
    if request.method == 'POST': 
     form = QuestionForm1(request.POST) 
     if form.is_valid(): 
      form.save() # saves to database 
      return HttpResponse('question2.html') 
     else: 
      return render(request, 'music/failed.html') 
    return render(request, 'music/question1.html', locals()) 


def question2(request): 
    question_form2 = QuestionForm2() 
    if request.method == 'POST': 
     form2 = QuestionForm2(request.POST) 
     if form2.is_valid(): 
       form2.save() # Saves to database 
       return render(request, 'music/question3.html', locals()) 
     else: 
       return render(request, 'music/failed.html') 
    return render(request, 'music/question2.html', locals()) 

編集:追加Urls.py

from django.conf.urls import url 
    from . import views 

    app_name = 'music' 

    urlpatterns = [ 
     url(r'^$', views.index, name='index'), 
     url(r'^register/$', views.register, name='register'), 
     url(r'^login_user/$', views.login_user, name='login_user'), 
     url(r'^logout_user/$', views.logout_user, name='logout_user'), 
     url(r'^question1/$', views.question1, name='question1'), 
     url(r'^question2/$', views.question2, name='question2'), 

    ] 

答えて

0
from django.http import HttpResponseRedirect 
from django.urls import reverse 

# delete following line 
return HttpResponse('question2.html')` 

# replace with this one 
return HttpResponseRedirect(reverse('view_name_here')) 

# or if you are using any namespaces for your url 
return HttpResponseRedirect(reverse('namespace:view_name_here')) 
+0

これはエラーを投げています。 'music.views.question2'を引数 '()'で置き換え、キーワード引数 '{}'を見つけられません。 0個のパターンが試されました:[] –

+0

あなたの 'urls.py'ファイルが見えますか? –

+0

完了。 @nik_mあなたとのコミュニケーションの方法はありますか?私が作っているものをあなたに知らせたいと思っています。 –

関連する問題