1
我想在Django的同一頁上呈現兩個表單(註冊和登錄)。我想通過更改<form action="some_url"
標記將數據發佈到任一字段。這是這個答案中的第一個建議:https://stackoverflow.com/a/1395866/2532070是否可以發佈到不同的Django視圖?
這可能嗎?目前,我有:
urls.py:
url(r'^', HomePageView.as_view()),
url(r'^signup/$', SignupUser.as_view(), name="signup_user"),
views.py:
class HomePageView(View):
template_name = "index.html"
login_form = AuthenticationForm()
signup_form = UserCreationForm()
def get(self, request, *args, **kwargs):
return render(request, self.template_name, {
'login_form': self.login_form,
'signup_form': self.signup_form,
'signup_action': reverse("signup_user")}
)
class SignupUser(CreateView):
model = settings.AUTH_USER_MODEL
form_class = UserCreationForm
我的模板:
<form action="{{ signup_action }}" method="POST">{% csrf_token %}
{{ signup_form }}
<input type="submit" value="Signup">
</form>
不幸的是,POST,似乎是在提醒後功能HomePageView
,而不是調用SignupUser
視圖。
是否可以通過正確格式化我的表單的action="..."
標籤來調用SignupUser視圖和POST數據?
當然,這是可能的:這只是標準的HTML行爲。你可以檢查(通過查看源代碼)動作屬性正確填充? – 2014-10-12 12:34:26
謝謝丹尼爾!它加載爲action =「/ signup /」 – YPCrumble 2014-10-12 12:36:48