2012-03-05 32 views
0

我需要在1個網頁上顯示兩個模板(來自不同視圖)的內容(這些是並排登錄和註冊表單,遲早我會包含其他應用程序)。Django在一個模板文件中呈現來自單獨應用程序的模板

因此,我創建了index.html,用於顯示兩個模板 - login.html和register.html - 使用{%include%} templatetag。但是,當我輸入不正確的值後,我將其重定向到我已經導入的模板,以驗證註冊表單。

如何解決我在其他(第三個)模板中從兩個完全獨立的視圖中獲取表單的問題?

+0

的請求不能由兩個視圖在同一時間處理。我認爲你的做法是錯誤的。發佈您的代碼,以便人們可以引導您 – 2012-03-05 11:52:27

+0

http://pastebin.com/WMfnfDp6 這就是我的代碼,請查看它:) – Efrin 2012-03-05 15:16:49

回答

0

我怎樣才能解決我的問題,從其他(第三個)模板中的兩個完全獨立的 視圖?

您應該指定表單的action屬性。

0

您可以使用上下文變量(例如「類型」)來區分同一模板中的兩個表單。

在廠景:

if login_form.is_valid(): 
    # do something 
    return render_to_response("home.html", context_instance=RequestContext(request)) 
else: 
    return render_to_response("index.html", {"login_form": login_form, "type": "login"}, context_instance=RequestContext(request)) 

在視圖2:

if register_form.is_valid: 
    # do something 
    return render_to_response("home.html", context_instance=RequestContext(request)) 
else: 
    return render_to_response("index.html", {"register_form": register_form, "type": "register"}, context_instance=RequestContext(request)) 
+0

感謝您的一些信息。這就是我的代碼稍作審查:) http://pastebin.com/WMfnfDp6 – Efrin 2012-03-05 15:17:40

相關問題