Python3.5 学习二十
学会用三种方法检索数据
1、对象方式
2、字典方式
3、元组方式
models后面,如果是.values() 则为字典方式
如果是value_list() 则为元组方式
跨表操作时,如果是对象,可以用.进行跨表查询字段
如果用指定列名的字符串方式,则需要用神奇的"__"双下划线来引入跨表字段
详见20180910项目示例
初始Ajax,可以取代form表单提交,主要应用于验证数据
$('#ajax_submit').click(function () {
$.ajax({
url:"/test_ajax/",
type:'POST',
data:{'hostname':$('#hostname').val(),'ip':$('#ip').val(), 'port':$('#port').val(), 'b_id':$('#b_id').val()},
success:function (data) {
if (data == "OK") {
location.reload();
}
else
{
alert(data);
} },
}) }) JQuery内部有很多方法,诸如$.get\$.post\$.getJson等,其内部都是调用的$.ajax方法
本质上是一样的,发请求操作的,推荐使用$.ajax, 补充知识:JSON的序列化和反序列化
前端字符串转对象:JSON.parse()
前端对象转字符串:JSON.stringify()
建议使用HTTPresponse+JSON.dumps()返回一个标注格式的字典,便于前端解析JSON格式后进行后续处理
如果用return render,返回一个html,前端无法json解析,没有什么意义
另,ajax无法return一个redirect重定向,请注意!
练习使用ajax进行静态页面的增删改查
数据库的多对多操作:
创建多对多关系一:自定义关系表
方式二:自动创建关系表
用途中:自动创建的方便,但是只能是两个表的关系,加上自身ID,一共有且只有3列,不是很灵活
自定义的使用灵活
自定义的方式,调用数据表可以用类方式
而自动生成的,需要调用对象的列进行操作,相当于只是对第三张表进行操作了
obj.r.all() --> 可以获取到相关的host对象的QuestSet”列表“”
补充知识点:ajax操作返回的数据类型的区别:
“**************如果增加一个dataType:‘JSON’,则直接将字符串data转换为obj对象回给用户*********
注意ajax语法和功能点:
Python3.5 学习二十的更多相关文章
- Python3.5 学习二十四
本节课程大纲: -------------------------------------------------------------------------------------------- ...
- Python3.5 学习二十二
回顾: 发送请求时:发送请求头和请求数据 request.META和request.request.body 响应请求时:响应头和响应返回数据 response.HEADER和response.bod ...
- python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL
python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...
- python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置
python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...
- python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例
python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...
- python3.4学习笔记(十九) 同一台机器同时安装 python2.7 和 python3.4的解决方法
python3.4学习笔记(十九) 同一台机器同时安装 python2.7 和 python3.4的解决方法 同一台机器同时安装 python2.7 和 python3.4不会冲突.安装在不同目录,然 ...
- python3.4学习笔记(十六) windows下面安装easy_install和pip教程
python3.4学习笔记(十六) windows下面安装easy_install和pip教程 easy_install和pip都是用来下载安装Python一个公共资源库PyPI的相关资源包的 首先安 ...
- python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...
- python3.4学习笔记(十) 常用操作符,条件分支和循环实例
python3.4学习笔记(十) 常用操作符,条件分支和循环实例 #Pyhon常用操作符 c = d = 10 d /= 8 #3.x真正的除法 print(d) #1.25 c //= 8 #用两个 ...
随机推荐
- Google Reader 快关了!!
现在还每天用Google Reader, 每次打开都提示7月1号要关闭... 上图怀念: 控制区功能:排序.展开\收缩显示.上一条\下一条,还有下拉框下的很多功能... 列表显示 针对每个Item下的 ...
- clion中资源文件以及头文件的引用
首先在使用clion中没有将文件target就会出现下面的错误 在使用的时候可以默认一下 在以后的使用中如果不需要某个文件时 就可以在CMakeLis.txt文件把它删除掉 在代码界面的最上面出 ...
- Winform自定义表单(转)
出处:http://www.newlifex.com/showtopic-167.aspx 好吧,附件真的损坏了,原始代码我也没有了,再提取我也没精力了,不好意思,哪位之前下过可以重发一遍吗?不过即使 ...
- 更改Ubuntu默认python版本的两种方法python-> Anaconda
当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Python 版本,因此系统中会存在多个 Python 的可执行二进制文件.一般Ubuntu默认的Python版本都为2. ...
- mysql update受影响的行数为0或查询结果为空时
当执行update语句时,如果受影响的行数是0,返回的也是true. $conn = new mysqli(); $sql = "update ..."; $query = $co ...
- str.index()与str.find()比较
def extract_from_tag(tag,line): opener = "<" + tag + ">" closer = "&l ...
- 总结一下《vue的使用》
1.用vue创建项目的时候, 1.安装axios,对axios进行处理,创建axios.js文件,设置基础请求地址, 设置前置守卫和独享守卫,对请求数据进行设置,(特别实在进行token验证的时候特别 ...
- fPLL结构及动态配置
输入参考时钟 从上图可以看到参考时钟输入的几种类型. 注意:fPLL的校正是由CLKUSR来驱动的,这个时钟必须要保持稳定. 参考时钟利用器 N计数器 N计数器会把参考时钟利用器输出进行分 ...
- WordPaster-KesionCMS V8整合教程
1.上传WordPaster文件夹 2.上传ckeditor3x插件文件夹 4.修改ckeditor编辑器的config.js文件,启用插件,在工具栏中增加插件按钮 5.在文章页面增加插件初始化代码 ...
- 20155326 2006-2007-2 《Java程序设计》第4周学习总结
20155326 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承共同行为 (1)继承基本上就是避免多个类间重复定义共同行为,关键词为extends. ( ...