解决Django一个表单对应多个按钮的问题

yipeiwu_com6年前Python基础

需求:

在django中,有时候我们需要在一个表单中设置多个按钮实现不同的功能。

解决方法:

为不同按钮添加不同name属性,然后再后台判断name值。python2环境下,例如:

我们的表单头

<form method="post" action="自定" οnsubmit="return">

我们的按键,比如实现删除和更新

<button type="submit" class="btn btn-info" name="del">删除</button>
<button type="submit" class="btn btn-info" name="update">更新</button>

然后通过不同的name实现不同功能

def function(request):
  if request.POST:
    if request.POST.has_key('update'):
      ...   #update功能实现
    else:
      ...   #del功能实现
    return render(request, 'xxx.html', yyy)

就是根据has_key(),判断不同按钮然后实现不同功能。

在python3中,删除了has_key()方法,改为in即可,如:

if 'update' in request.POST:

以上这篇解决Django一个表单对应多个按钮的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用tcp实现局域网内文件传输

本文为大家分享了python使用tcp实现局域网内文件传输的具体代码,供大家参考,具体内容如下 功能: 可以利用python创建的TCP客户端从我们自己搭建的TCP服务器上下载文件。...

Django中的Signal代码详解

Django中的Signal代码详解

本文研究的主要是Django开发中的signal 的相关内容,具体如下。 前言 在web开发中, 你可能会遇到下面这种场景: 在用户完成某个操作后, 自动去执行一些后续的操作. 譬如用...

Python中的lstrip()方法使用简介

 lstrip()方法返回所有字符被去除开头字符串(缺省为空格字符)的一个复本。 语法 以下是lstrip()方法的语法: str.lstrip([chars]) 参...

python实现Virginia无密钥解密

本文实例为大家分享了Virginia无密钥解密的具体代码,供大家参考,具体内容如下 加密 virginia加密是一种多表替换加密方法,通过这种方法,可以有效的解决单表替换中无法应对的字...

浅谈Python类中的self到底是干啥的

Python编写类的时候,每个函数参数第一个参数都是self,一开始我不管它到底是干嘛的,只知道必须要写上。后来对Python渐渐熟悉了一点,再回头看self的概念,似乎有点弄明白了。...