Javascript 如何获取指针字段带有objectId的记录?

Javascript 如何获取指针字段带有objectId的记录?,javascript,parse-platform,Javascript,Parse Platform,假设我拥有类别类中记录的objectId,我需要获取属于该类别的所有子类别(来自子类别类)子类别。categoryId是指向类别的指针字段。如果我这样做: // State .state('app.create-chambba', { cache: false, url: "/services/create-chambba/:categoryId", views: { "menuContent": { templateUrl: "views/app/servic

假设我拥有
类别
类中记录的
objectId
,我需要获取属于该类别的所有子类别(来自
子类别
类)<代码>子类别。categoryId是指向
类别的
指针
字段。如果我这样做:

// State

.state('app.create-chambba', {
  cache: false,
  url: "/services/create-chambba/:categoryId",
  views: {
    "menuContent": {
      templateUrl: "views/app/services/create_chambba.html",
      controller: "CreateChambbaCtrl"
    }
  }
})

// Controller

var SubCategory = Parse.Object.extend("SubCategory");
var query = new Parse.Query(SubCategory);
query.equalTo("isActive", true);
query.equalTo("categoryId", $stateParams.categoryId); // categoryId is "aOPHM46mtR" 
query.ascending("name");
query.find(...);
我得到:

message: "pointer field categoryId needs a pointer value"
所以我最终做了:

var Category = Parse.Object.extend("Category");
var queryCategory = new Parse.Query(Category);
queryCategory.equalTo("objectId", $stateParams.categoryId);
queryCategory.first({
    success: function(category) {
        var SubCategory = Parse.Object.extend("SubCategory");
        var query = new Parse.Query(SubCategory);
        query.equalTo("isActive", true);
        query.equalTo("categoryId", category);
        query.ascending("name");
        query.find(..);
    }
});

那不是额外的工作吗?有更好的方法吗?

创建该类别的新对象,并将该对象的id作为您搜索的id

  var category = new Category();  
  category.id=$stateParams.categoryId; 

  ....
并将类别对象用作指针

  query.equalTo("categoryId", catagory); 

这是一个小技巧,但应该可以解决问题。

您可以尝试创建该类别的新对象,并将该对象的id作为您搜索的id。var category=新类别();category.id=$stateParams.categoryId;并将类别对象用作指针。我认为这应该解决你的问题problem@Alon好吧,这真的很有效,创建一个答案,这样我就可以接受了