|
[云开发]
求优化 求指点 pointer的查询方法
[复制链接]
1、终于查询出pointer的数据值,进行了两次查询,查询两个class表
shopcar(id shopid(帖子ID pointer表dishes) uid(用户ID pointer表user))
dishes(id titel (帖子标题) centent(帖子内容) )
代码很繁琐,有没有API可以优化的? 能否一段代码就可以达到目的呢?
2、另外出一个问题,查询的数据不听的覆盖。显示总是一条
function chaxun() {
var uid = $api.getStorage('uid');
var appId = 'A69801179995225';
var appKey = '4D1947B7-1FEA-0130-67D1-5BD33962F9B7';
var host = 'https://d.apicloud.com';
var now = Date.now();
var AppKey = hex_sha1(appId + "UZ" + appKey + "UZ" + now) + "." + now;
var appPath = '/mcm/api/shopcar'; //表查询表shopcar 里面有一个字段shopid(pointer-dishes表)
var getParam = '&filter[where][uid]=' + uid;
api.ajax({
url : host + appPath + getParam,
method : 'get',
cache : false,
timeout : 20,
dataType : 'json',
returnAll : false,
headers : {
"X-APICloud-AppId" : appId,
"X-APICloud-AppKey" : AppKey
} //通过头信息进行认证
}, function(ret, err) {
if (ret) { //查询成功,查询用户发布了多少条帖子及帖子的id号
var item = [];
var content = $api.byId('test');
var con = "";
item = ret;
for (var i = 0; i < item.length; i++) {
var cid = item.shopid; //根据shopchar查询出来帖子ID,遍历查询dishe表里 帖子的详细信息
//
var model = api.require('model');
model.findById({
class : 'dishes',
id : cid
}, function(ret, err) {
if (ret) {
// alert('商品' + JSON.stringify(ret))
createItem(ret); //调用函数打印到div(id=test)
}
});
}
} else {
var err_msg = '错误码:' + err.code + ';错误信息:' + err.msg + '网络状态码:' + err.statusCode;
api.toast({
msg : err_msg,
location : 'middle'
});
};
});
}
function createItem(ret) {
var str = '<div id=a clss="classify" tapmode="itemhover">';
str += '<img src="../image/more_icon_10.png" alt="" class="sublogo">';
str += '<img src="../image/phone.png" alt="" class="sublogo2">';
str += '<div class="info"><div class="title">' + ret.name + '</div><div class="subtitle">' + ret.price + '元/kg</div>';
str += '<div class="subtitle2">' + ret.tprice + '元/kg</div></div> </div>';
alert(str);
var content = $api.byId('test');
content.innerHTML = str;
}
|
|