帖子
帖子
用户
博客
课程
显示全部楼层
3
帖子
0
勋章
28
Y币

[App引擎] 关于model方法里的findById的错误求助

[复制链接]
发表于 2015-8-5 20:48:04
嗯。先POST代码
                var userId = $api.getStorage('userId');
                        model.insert({                              
                        class:'order',
                        value:{
                        id:userId ,
                        date:gtime,
                        goodsname:gname,
                        weight:gweight,
                        goodsvalue:gvalue,
                        transport:gvehicle
                        }
                },function(ret,err){
                        if(ret){
                                alert("成功啦!");
                        }             
                });
                                model.findById({
                                    class:'order',
                                    id: userId
                          },function(ret,err){
                                  alert("ret: " + JSON.stringify(ret.gvehicle) + "\nerr: " + JSON.stringify(err));
                          });
                        model.updateById({
                                class : 'user',
                                id : userId,
                                value : {
                        date:gtime,
                        goodsname:gname,
                        weight:gweight,
                        goodsvalue:gvalue,
                        transport:gvehicle,
                                        goodsphotonload_pic,
//                                        shoufei:shoufei,
//                                        buchong:buchong
                                }
                        },function(ret, err) {
                                if(ret){
                                alert('提交成功');
//                                api.openWin({
//                        name: 'faxingtel',
//                        url: 'faxingtel.html'
//              });
                                api.openWin({
                        name: 'dingdanzhongxin',
                        url: 'dingdanzhongxin.html'
                });
                               
                                }else{
                                alert('提交失败');
                                }
                        });
                        }

嗯,错误的地方是在model.findById 这里,错误信息是"statusCode":401,"message":"Access  Denied","status":401,"name":"Error"
另外我之所以把insert加上是想这样,首先判断,如果在数据库中现在的userId已经存在,那么就实现下面的修改,如果不存在,就插入。
希望哪位大神看看给个指点。
8
帖子
0
勋章
1万+
Y币
首先,model.insert, model.findById 以及 model.updateById 是异步的。这样以同步的方式写代码很可能会出现问题。
其次,model.insert 插入数据时是无法设置 id 的。因此,后面的 findById  和 updateById 中用到的 id 是无效的。
另外,要确保在使用云数据库前通过 model.config 配置了 appId appKey 以及 host。
3
帖子
0
勋章
28
Y币
en .所以还是用 model.updateById 来更改数据吧。
您需要登录后才可以回帖 登录

本版积分规则