2017-01-12 12 views
0

私はcontact.htmlの連絡先フォーム、ニュースレターフォーム、写真スライダ/ポートフォリオをお持ちです。このページにのみすべてが引き込まれます。Django:同じURLにいくつかのビュー/クラスを含めるには?

ドキュメントに「URLディスパッチャ」と関係があると思いますか?誰かが、同じURLにすべてのものを指す方法の例を挙げて助けてくれますか?

完了後、メールが送信された後、ニュースレターに登録された後など、すべてのものをインデックスに戻したい場合。私が正しい用語でそれをする知識を持っていないので、私が実際にここで意味することをより良く説明するだけです。

私が得ることができるすべてのヘルプの事前に感謝します。

+0

いいえ、URLディスパッチャーとは関係ありません。 URLは1つの単一のビューのみを指すことができます。 –

+0

よろしくお願いいたします。しかし、同じURL /ページに複数のクラスやアプリを含めるにはどうすればよいですか?たぶん私はその概念を誤解しているかもしれません。しかし、私が望むことは可能ですか? – Lothe

答えて

0

可能な解決策として、複数のフォームでインデックスページを作成することができます。

まず形式:

<form action="{% url 'myapp:index_one' %}" enctype="multipart/form-data" method="post"> 

第二形式:それぞれに

<form action="{% url 'myapp:index_two' %}" enctype="multipart/form-data" method="post"> 

あなたはすべてのフォームを作成して表示し、それらを通過した各フォームは、例えば、それ自身のビューにポストにリダイレクトしますindex.html

def index_one(): 
    indexForm1 = index_form1() 
    indexForm2 = index_form2() 

    if request.POST: 
     indexForm = index_form1(request.POST, request.FILES) 
     //process first form here 

    //load index.html and pass context with forms 

2番目のビューでは同じことをしますが、POSTでは別のフォームを処理します:

def index_two(): 
    indexForm1 = index_form1() 
    indexForm2 = index_form2() 

    if request.POST: 
     indexForm2 = index_form2(request.POST, request.FILES) 
     //process second form here 

    //load index.html and pass context with forms 

私はそのような解決策を生産中に持っており、正常に動作しています。

関連する問題