一、初始Ajax

 ajax的写法:

$.ajax({
url:'/host',
type:'POST'
data:{'k1':123,'k2':'root'}
success:function(data){ }#执行成功后自动触发这个函数 })

  

ajax的使用:

#在JavaScript中写jquery
$('#ajax_submit').click(function(){
$.ajax({
url:'/ajax_text',
type:'GET'
data:{'user':'root','pwd':'234'}
success:function(data){
alert(data)
}#执行成功后自动触发这个函数 })

  

一些注意的地方:

			在JavaScript中将字符串转换为对象:
JSON.parse(data)
对象转化为字符串:
JSON.stringfy(data) 建议:永远让服务端返回一个字典
return HttpResponse(json.dumps(字典)) ajax 将form中的数值打包:
data:$('#add_form').serialize()

  

当数据有列表时,加入traditional
加入dataType 可以自动将字符串转换为json对象形式

		$.ajax({
url:'/host',
type:'POST'
data:{'k1':123,'k2':[1,2,3]}
dataTpye:json
traditional:True
success:function(data){ }#执行成功后自动触发这个函数
error:function(){}#未知错误时 })

  

二、多对多

  创建多对多:

方式一:自定义关系表
class Host(models.Model):
nid = models.AutoField(primary_key=True)
hostname = models.CharField(max_length=32) class Application(models.Model):
name = models.CharField(max_length=32) class HostTOApp(models.Model):
hobj = models.ForeignKey(to='Host',to_field='nid')
aobj = models.ForeignKey(to='Application',to_field='id')
方式二:自动创建关系表
class Host(models.Model):
nid = models.AutoField(primary_key=True)
hostname = models.CharField(max_length=32) class Application(models.Model):
name = models.CharField(max_length=32)
r = models.ManyToManyField('Host')

  

操作:

1.
HostTOApp.objects.create(hobj_id = 1, aobj_id = 2) #但是自动创建的无法直接对第三张表进行操作 2.
添加:
obj = Application.objects.get(id=1)
obj.r.add(1)
obj.r.add(2,3)
obj.r.add(*[1,2,3,4])
删除:
obj.r.remove(1)
obj.r.remove(2,3)
obj.r.remove(*[1,2,3,4]) obj.r.clear() 更新数据
obj.r.set([3,5,7]) 获取所有相关应用的主机列表:
obj.r.all() queryset 对象

  

网页编程-Djiango(二)的更多相关文章

  1. Javascript模块化编程(二):AMD规范

    Javascript模块化编程(二):AMD规范   作者: 阮一峰 原文地址:http://www.ruanyifeng.com/blog/2012/10/asynchronous_module_d ...

  2. (转)Javascript模块化编程(二):AMD规范

    转自 ruanyifeng 系列目录: Javascript模块化编程(一):模块的写法 Javascript模块化编程(二):AMD规范 Javascript模块化编程(三):Require.js的 ...

  3. 《高性能javascript》 领悟随笔之-------DOM编程篇(二)

    <高性能javascript> 领悟随笔之-------DOM编程篇二 序:在javaSctipt中,ECMASCRIPT规定了它的语法,BOM实现了页面与浏览器的交互,而DOM则承载着整 ...

  4. WCF编程系列(二)了解WCF

    WCF编程系列(二)了解WCF   面向服务     服务是复用进化的结果,起初的复用是函数,面向对象编程的出现使复用从函数上升到对象,随后面向组件编程又将复用从对象上升到组件,现在面向服务编程将复用 ...

  5. 转: JavaScript函数式编程(二)

    转: JavaScript函数式编程(二) 作者: Stark伟 上一篇文章里我们提到了纯函数的概念,所谓的纯函数就是,对于相同的输入,永远会得到相同的输出,而且没有任何可观察的副作用,也不依赖外部环 ...

  6. require.js实现js模块化编程(二):RequireJS Optimizer

    require.js实现js模块化编程(二):RequireJS Optimizer 这一节,我们主要学习一下require.js所提供的一个优化工具r.js的用法. 1.认识RequireJS Op ...

  7. shell编程(二)

    第三十二次课 shell编程(二) 目录 十五.shell中的函数 十六.shell中的数组 十七.告警系统需求分析 十八.告警系统主脚本 十九.告警系统配置文件 二十.告警系统监控项目 二十一.告警 ...

  8. 脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?

    1.引言 本文接上篇<脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手>,继续脑残式的网络编程知识学习 ^_^. 套接字socket是大多数程序员都非常熟悉的概念,它是计算机 ...

  9. [Java并发编程(二)] 线程池 FixedThreadPool、CachedThreadPool、ForkJoinPool?为后台任务选择合适的 Java executors

    [Java并发编程(二)] 线程池 FixedThreadPool.CachedThreadPool.ForkJoinPool?为后台任务选择合适的 Java executors ... 摘要 Jav ...

随机推荐

  1. iOS-通信录

    1.概述: * 对于每一个移动设备而言,都有一个内置的数据库-----通讯录. * 在IOS上,通讯录放在SQLite3数据库中. * 由于不同应用之间不能直接访问,我们想要实现对数据库的访问,必须使 ...

  2. el-select绑定值为对象时,报错[Vue warn]: <transition-group> children must be keyed: <ElTag>

    解决方法: <el-select v-model="syncParams.toSlaveList" multiple value-key="ip" pla ...

  3. js 打印二维码

    先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcode 获取), qrcode.js 是实现二维码 ...

  4. es6总结(二)--正则表达式和字符串

  5. JVM指令助记符

    以下只是JVM指令助记符,关于JVM指令的详细内容请阅读<JVM指令详解> 变量到操作数栈:iload,iload_,lload,lload_,fload,fload_,dload,dlo ...

  6. 标准C程序设计七---76

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  7. 标准C程序设计七---42

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  8. pycharm提示your evalluation license has expired解决方法

    安装pycharm,一段时间后提示your evalluation license has expired:打开pycharm--点击help--register--选中license server, ...

  9. HDU 4749: Parade Show

    看大神代码,发现上交大神很棒的一个思路 题意: 在源数字串中找出尽量多的连续子串,要求子串任意两值的大小关系与目标串相同位置的值的大小关系相同.求源串能拿出的子串的最大数量. 关键词: RK-Hash ...

  10. Hibernate游记——装备篇《一》(基础配置详解)

    Hibernate配置文件可以有两种格式,一种是 hibernate.properties ,另一种是 hibernate.cfg.xml 后者稍微方便一些,当增加hbm映射文件的时候,可以直接在 h ...