Parse.com JS SDK包含多个嵌套查询

时间:2016-01-21 18:14:49

标签: parse-platform nested-queries

设定:

  • 一种产品,它有一个指向品牌的指针和一个指向商店的指针
  • 一个品牌,有名字,..
  • 一家商店,有名字,城市......

查询应根据过滤器获取所有产品,例如:

  • 零,product.brand.id应与之匹配的一个或多个品牌ID
  • 零,一个或多个与product.shop.id匹配的商店ID

我有一个数组中的id,所以基本上我最终想要的是:

$($('.myClass')[5])

我无法弄清楚如何做到这一点,我已尝试以下方法来获取所有包含品牌ID的产品,这些产品都有效。 包含不起作用, ALSO 除品牌外,还应检查产品是否在给定商店ID列表中

    SELECT * FROM products 
WHERE product.shop.id IS IN shop_ids && product.brand.id IS IN brand_ids

1 个答案:

答案 0 :(得分:0)

您的代码基本上创建了一个查询列表,每个查询只能匹配一个ID。您需要使用containedIn API https://parse.com/docs/js/api/classes/Parse.Query.html#methods_containedIn。请尝试以下代码:

var query = new Parse.Query(product);
var brands = [];
for (var i = 0; i < brand_ids.length; i++) {
    var brand = new Brand();
    brand.id = brand_ids[i];
    brands.push(brand);
};
query.containedIn('brand', brands);
query.include('brand');
query.include('shop'); //TODO: where shop is one of [ids]
query.find();