我如何判断这两个表单中的哪一个是在Django中提交的
How can I tell which of the two forms is submitted in Django?
我的主页中有一个log_in
和sign_up
表单。默认情况下,log_in
设置为显示,当用户单击注册按钮时,sign_up
将显示。这两种切换取决于用户单击的按钮。
from django import forms
class LogInForm(forms.Form):
pass
class SignUpForm(forms.Form):
pass
两个窗体调用相同的视图-index_view()
。
你找错地方了。Django无法判断提交的表单,除非您在POST中提供一些信息。最好的位置是提交按钮,您可以像其他表单元素一样为其指定名称和值。
<form action="." method="POST">
{{ login_form.as_p }}
<input type="submit" name="login" value="login">
</form>
<form action="." method="POST">
{{ signup_form.as_p }}
<input type="submit" name="signup" value="signup">
</form>
在视图中,您所需要做的就是检查POST:中的输入
if 'login' in request.POST:
# do something with login_form
else:
# do something with signup_form
另一种方法是将GET参数添加到url并在视图中进行检查:
<form action="{% url index %}?action=login">
并且在视图中
def index_view(request):
action = request.GET.get('action', '')
if action == 'login':
...
相关文章:
- iPad虚拟键盘-哪一个-javasctript解决方案
- 保存两个模型(属于第三个模型)和一个提交
- 哪一个是Angular2/Typescript for Windows的最佳IDE
- 哪一个在访问数组长度方面的性能更好
- Angular 2 + 打字稿或 Angular 2 + Javascript 建议使用哪一个
- 我如何比较一组数字,找出哪一个更接近生成的数字
- 这些选择器中哪一个更快
- 使用一个提交按钮验证两个字段
- 这些事件处理程序中的哪一个应该在窗口关闭时触发自定义函数
- 在迭代中仅启用一个提交按钮
- 只能通过一个提交按钮发布值
- jQuery icheck 回调 - 单击了哪一个
- 如何使用一个提交按钮提交三个表单
- 两个表单 - 一个提交按钮
- 使用 apply() 与 call(),在这种情况下使用哪一个
- 现代化与仅为CSS中的前缀提供回退.哪一个,为什么
- 使用哪一个 - Kml 或谷歌地图 API
- 哪一个更好,使用带有javascript或canvas的纯html
- 一个表单中有两个提交按钮.提交功能中的事件可以知道是哪一个
- 我如何判断这两个表单中的哪一个是在Django中提交的