天天看点

Bmob(wechatApp)--对象的增删改1.创建对象2.添加数据3.修改数据4.删除数据

1.创建对象

所有的自定义对象都继承于Bmob.Object,所以我们可以使用Bmob.Object.extend(“数据表名”,{实例方法},{类方法});

例如:

// 为Bmob.Object的子类添加实例方法和类方法
var Langulage= Bmob.Object.extend("language", 
	{
      		//实例方法
      		getName: function() {
        		return this.get("name");
      		}
    	},{
      		//类方法
     		setNameEn: function(nameEn) {
        		var langulage= new Langulage();
        		langulage.set("name", nameEn);
        		return langulage;
      		}
	});

var language= Language.setNameEn("HTML5");
console.log(language.getName());
           

注意:

数据表名必须和bmob后端云库的表名一致,如果表名不存在,则bmob会自动在你第一次使用的时候创建。

每个Bmob.Object对象都有几个默认字段是由服务器端自动生成的。分别为:

objectId:每个对象的唯一标识。

createdAt:对象在Bmob中创建的时间。

updatedAt:对象在Bmob中最后修改的时间。

可以通过result的id、createdAt、updatedAt来分别获取对应的值

2.添加数据

每个Bmob.Object的子类都包含save方法。可以通过对象实例.save({null,成功回调函数,失败回调函数})或者对象实例.save({对象数据,成功回调函数,失败回调函数})来保存数据。

a.对象实例.save({null,成功回调函数,失败回调函数})使用时需现将对象的值设置进对应的属性,例如:

// 为Bmob.Object的子类添加实例方法和类方法
var Langulage= Bmob.Object.extend("language"); 
var language = new Language();
language.set("name","Java");
language.set("type","language");
language.save(null,
	{
	success:function(result){
		console.log(result.id+result.get("name"));
	},{
	error:function(result,error){
		console.log("新增失败");
	}
);
           

b.对象实例.save({对象数据,成功回调函数,失败回调函数})使用如下:

// 为Bmob.Object的子类添加实例方法和类方法
var Langulage= Bmob.Object.extend("language"); 
var language = new Language();
language.save(
	{
		name:"Java",
		type:"java"
	},{
	success:function(result){
		console.log(result.id+result.get("name"));
	},{
	error:function(result,error){
		console.log("新增失败");
	}
);
           

3.修改数据

修改数据需先根据id获取需修改的对象,让后再修改获取到的对象,并保存到数据库。

var Language= Bmob.Object.extend("language");
var query = new Bmob.Query(Language);

// 根据id获取对象
query.get('3453453453fdsdf', {
    success: function(result) {
      	// 修改对象的属性值
      	result.set('name', 'C#');
     	result.save();
    },
    error: function(object, error) {
	console.log("查询出错");
    }
});
           

4.删除数据

a.删除单条数据

需先获取需要删除的数据对象,再删除该数据对象。

var Language= Bmob.Object.extend("language");
var query = new Bmob.Query(Language);

// 根据id获取对象
query.get('3453453453fdsdf', {
    success: function(result) {
      	// 修改对象的属性值
      	result.destory({
		succtess:function(delObject){
			//do something
		},{
		error:function(delObject,error){	
			//do something
		}
	})
    },
    error: function(object, error) {
	console.log("查询出错");
    }
});
           

b.批量删除

Bmob.Object.destoryAll(delObjects);
           

c.删除指定查询条件的数据

query.destoryAll({
	succtess:function(delObject){
		//do something
	},{
	error:function(delObject,error){	
		//do something
	}
})
           

继续阅读