Python 除了POST方法外,有没有其他方法可以从django模板中提取数据
在我网站的一个页面中,我尝试创建两个按钮“保存”和“删除”。“另存为”顾名思义是将填写到表格中的数据保存到我的数据库中。删除删除此数据。我想在views.py文件中分别访问这两个按钮,但我知道检测用户输入的唯一方法是检查request.method==“POST”。但是在保存和删除按钮的情况下,都会发出POST请求。如何区分单击“删除”和“保存”按钮,以便为每个按钮编写不同的代码?使用按钮中的Python 除了POST方法外,有没有其他方法可以从django模板中提取数据,python,django,web,django-templates,http-post,Python,Django,Web,Django Templates,Http Post,在我网站的一个页面中,我尝试创建两个按钮“保存”和“删除”。“另存为”顾名思义是将填写到表格中的数据保存到我的数据库中。删除删除此数据。我想在views.py文件中分别访问这两个按钮,但我知道检测用户输入的唯一方法是检查request.method==“POST”。但是在保存和删除按钮的情况下,都会发出POST请求。如何区分单击“删除”和“保存”按钮,以便为每个按钮编写不同的代码?使用按钮中的名称标记来区分POST操作 例如: 删除 并在以下情况下使用: 如果request.POST中有“de
名称
标记来区分POST操作
例如:
删除
并在以下情况下使用:
如果request.POST中有“delete”:
使用两个单独的表单,通过ajax提交它们似乎是最简单的方法
view.py
创建2个视图。一个用于添加/更新数据,另一个用于删除数据
def submit_view(...):
if request.POST:
# add data (if form.is_valid, and more)
def delete_view(...):
if request.POST:
# delete data (if form.is_valid, and more)
模板
现在在模板中添加两个单独的表单,并使用ajax提交它们
<form action="/submit" id="submit_form">
<input type="text" id="lname" name="lname" value="Doe"><br><br>
<input type="button" value="submit" id="submit_button">
</form>
<form action="/delete" id="delete_form">
<input type="text" id="lname" name="lname" value="Doe"><br><br>
<input type="button" value="delete" id="delete_button">
</form>
<script>
$('#submit_button').on('click',function(){$('#submit_form').submit();});
$('#delete_button').on('click',function(){$('#delete_form').submit();});
</script>
$('submit_按钮')。在('click',function(){$('submit_form')。submit();});
$('delete_button')。在('click',function(){$('delete_form')。submit();});
先生,我知道了,但是您能告诉我为什么$signIts是因为jQuery吗。如果你不喜欢,试试vanila JS。尝试以下类似的操作:document.getElementById('submit_按钮')。addEventListener('click',function(){document.getElementById('submit_表单')。submit();});document.getElementById('delete_按钮')。addEventListener('click',function(){document.getElementById('delete_表单')。submit();});