-_-#【Backbone】Model
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="../../app-min.css">
</head>
<body>
<script src="../../jquery/jquery-1.10.2.js"></script>
<script src="../underscore.js"></script>
<script src="../backbone.js"></script>
<script>
var Man = Backbone.Model.extend({
url: '/man/',
initialize: function() {
console.log('initialize')
// 初始化时绑定监听
this.bind('change:name', function() {
var name = this.get('name')
console.log('you changed name to ' + name)
})
this.bind('invalid', function(model, error) {
console.log(error)
})
this.bind('error', function(model, error) {
console.log(error)
})
},
defaults: {
name: 'name',
age: 'age'
},
validate: function(attributes) {
if (attributes.name == '') {
return 'name不能为空'
}
},
aboutMe: function() {
return 'wo jiao ' + this.get('name')
}
}) var man = new Man
console.log(man.get('name'))
man.set({name: ''})
console.log(man.get('name'))
console.log(man.aboutMe())
// 调用save方法时会post对象的所有属性到server端
// 调用fetch方法是又会发送get请求到server端
// 接受数据和发送数据均为json格式
man.save() // save时触发验证。根据验证规则,弹出错误提示 //man.fetch()
//man.fetch({url:'/man/'})
man.fetch({
url: '/man/',
success: function(model, response) {
// model 为获取到的数据
console.log(model.get('name'))
},
error: function() {
console.log('error')
}
})
// 你设置了urlRoot之后,你发送PUT和DELETE请求的时候,其请求的url地址就是:/baseurl/[model.id]
</script>
<article class="content">
<pre>var Man = Backbone.Model.extend({
url: '/man/',
initialize: function() {
console.log('initialize')
// 初始化时绑定监听
this.bind('change:name', function() {
var name = this.get('name')
console.log('you changed name to ' + name)
})
this.bind('invalid', function(model, error) {
console.log(error)
})
this.bind('error', function(model, error) {
console.log(error)
})
},
defaults: {
name: 'name',
age: 'age'
},
validate: function(attributes) {
if (attributes.name == '') {
return 'name不能为空'
}
},
aboutMe: function() {
return 'wo jiao ' + this.get('name')
}
}) var man = new Man
console.log(man.get('name'))
man.set({name: ''})
console.log(man.get('name'))
console.log(man.aboutMe())
// 调用save方法时会post对象的所有属性到server端
// 调用fetch方法是又会发送get请求到server端
// 接受数据和发送数据均为json格式
man.save() // save时触发验证。根据验证规则,弹出错误提示 //man.fetch()
//man.fetch({url:'/man/'})
man.fetch({
url: '/man/',
success: function(model, response) {
// model 为获取到的数据
console.log(model.get('name'))
},
error: function() {
console.log('error')
}
})
// 你设置了urlRoot之后,你发送PUT和DELETE请求的时候,其请求的url地址就是:/baseurl/[model.id]</pre>
</article>
</body>
</html>
-_-#【Backbone】Model的更多相关文章
- -_-#【Backbone】Router
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- -_-#【Backbone】View
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- -_-#【Backbone】Collection
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Linu下的Mysql学习详解_【all】
Linux下Mysql简介 1.什么是Mysql(MariDB) 1.数据库:存储数据的仓库 2.关系型数据库:mysql(主流用5.5,5.6), oracle 本质:二维表 ...
- Mysql 系统学习梳理_【All】
0.Linux学习---CentOS 7编译安装MySQL 8.0 1.Mysql学习---SQL语言的四大分类 2.Mysql学习---基础操作学习 3.Mysql学习---基础操作学习2 4.My ...
- 【Django】--Model字段
参考地址:http://www.cnblogs.com/wupeiqi/articles/6216618.html 所有字段 AutoField(Field) --int自增列,必须填入参数prima ...
- Python 系统学习梳理_【All】
Python学习 1. Python学习---Python安装与基础1205 2. Python学习---PyCharm的使用学习 3. Python学习---Python数据类型1206 4. Py ...
- Linux 下LNMP环境搭建_【all】
LNMP = Linux + Nginx + Mysql + PHP 1.0 Linux环境搭建 Linux 系统安装[Redhat] 1.1. FastCGI介绍 1.什么是CGI(common g ...
- 企业级NFS网络文件共享服务_【all】
1.1. 什么是NFS(1台机器提供服务) Network File System(网络文件系统)通过局域网让不同的主机系统之间共享文件或目录. NFS客户端可以通过挂载的方式将NFS服务器端共享的数 ...
随机推荐
- 搭建自己的SIPserver:开源sipserveropensips的搭建及终端TwInkle的使用
先下载源代码: 这里我下载的是1.8.2,由于这个是眼下的最稳定版本号,(尽管已经有1.9及2.0了) http://opensips.org/pub/opensips/1.8.2/src/opens ...
- iOS 独立开发记录(上)
个月前,完成了个人App的2.0版本,也在普天同庆的六一儿童节这天上架了.因为是个人开发,很多实现都是边探索边做.现在完成之后再回顾,发现自己走了些弯路.所以写了这篇总结,概览了从想法.设计.开发到最 ...
- 在/etc/password用户名前面加hello,ID前加is
方法2: #!/bin/sh #set -x file=/etc/passwd while read LINE #for i in `cat $file` do #username=`echo $i| ...
- ASP.NET-FineUI开发实践-17
我又不用FineUI开发,所以FineUI项目经验等于0,最近在忙别的,所以也没工夫研究.积累了论坛和群里的问题,写下来留个备份 1.在grid可编辑单元格中,如果需要在点击该单元格时,单元格中所有文 ...
- java邮件客户端
/*** *邮件VO **/package net.jk.util.email.vo; import java.util.Date; import java.util.List; import net ...
- datediff(),dateadd(),datepart().datename()时间处理函数
原文链接:http://www.cnblogs.com/whz111/articles/2445777.html --convert(时间)对应数字表示的时间格式 select CONVERT(var ...
- Ext4.1 grid 多选(可无checkbox)
转载 在Ext4.1中的grid默认只能实现单选的. 如果你想要你的grid有多选功能,需要给grid增加selModel 如果你使用了Ext.create('Ext.selection.Checkb ...
- (转)一步一步学习PHP(3)——函数
相信每个人在学习PHP之前至少都有着一定的C语言,或者是C++/Java/C#等其他语言的基础,所以在这里也不从头开始说起,只是来谈谈PHP方法的独特之处. 1. 方法概述 首先,写一个最简单的函数, ...
- 【转】教你爱上Blocks(闭包)
Block 与传统代码相比较更加轻量,调用简洁方便,而且可以返回多个参数,使用Block可以让代码更加具有易读性,而我们在写回调时,也可以直接写在函数内部,而不用再去写一个回调函数 Block 闭包 ...
- js 日期修改
很早之前在CSDN上发的博客,现在CSDN上得少了,就把这个转到园子里来 //重写toString方法,将时间转换为Y-m-d H:i:s格式 Date.prototype.toString = fu ...