django中的HTML控件及参数传递方法

yipeiwu_com7年前Python基础

本文对djangoHTML的表单控件中的单选及多选进行介绍,并说明如何进行参数传递。

1.HTML中的表单控件:

在HTML中表单的书写一般为:

<form method="post" action=""> 这个method代表方法,方法一般有两个一个是'post',一个是'get',action是提交表单到何处,可填写一个网址。不填则默认到本页面。
{%csrf_token%} 这个是django中的一个标签,用于防止恶意攻击使用,如果不加入这个标签,会遇到不能提交的问题,处理麻烦一点,建议加上。
<input name="select" type="radio" value='radio'>这就是一个单选标签,多选为type='checkbox'。 value是显示的内容,并且后端提交后也将此作为值,其中name是后端
获取时所用的如后端使用 select = request.POST['select']获取这个单选按钮的value,另外也可以用select = request.POST.get('select',None)来获取。
<input name="submit" type="submit" value="提交" />这就是一个提控件,其中的type='submit'会保证点击后表单(<form></form>)中的内容被提交到后端。
<input name="text" type="text" value="" />一个输入框
</form>
<!-表单结束>

前段在HTML中总的构造是

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>
<form method="post" action=""> 
{%csrf_token%}
<input name="select" type="radio" value='radio'>
<input name="text" type="text" value="" />
<input name="submit" type="submit" value="提交" />
</form>
</body>
</html>

那么前段HTML就是这样。

2.django的view.py中接受数据:

后端可以在view中书写一个def用于接受前端传入的数据:

如:

def receive_data(request):
 if request.POST: # 如果数据提交
 print('有提交')
 
 select = request.POST.get('select',None)
 
 text = request.POST.get('text',None)
 print(select,text)
 return render(request,'your_html.html', locals()) # your_html.html改为你的html页面并且参考前面的博客建立url链接。

这就是django建立前后交互的简单案例,在django 1.10.5 python 3.5 html 5下进行。

以上这篇django中的HTML控件及参数传递方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python导入时小括号大作用

在导入Python模块时,我们可以用 import os 也可以用 from os import * 当然,不推荐第二种方法,这样,会导入太多的os模块内的函数,所以...

简单介绍利用TK在Python下进行GUI编程的教程

简单介绍利用TK在Python下进行GUI编程的教程

我想要向您介绍能想像到的开始 GUI 编程的最简单方法,就是使用 Scriptics 的 TK 和 Tkinter 封装器。我们将与 developerWorks 中的 “Python...

对Python _取log的几种方式小结

1. 使用.logfile 方法 #!/usr/bin/env python import pexpect import sys host="146.11.85.xxx" user=...

python命令 -u参数用法解析

这篇文章主要介绍了python命令 -u参数用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在shell脚本中运行python...

python matplotlib库绘制条形图练习题

python matplotlib库绘制条形图练习题

练习一:假设你获取到了2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b),那么如何更加直观的展示该数据? a = ["战狼2","速度与激情8","功夫瑜伽","西游...