Loopbackjs 环回包括不相关的列表

Loopbackjs 环回包括不相关的列表,loopbackjs,strongloop,loopback,Loopbackjs,Strongloop,Loopback,在环回中,查询数据时很容易包含关系对象。例如,可以使用include过滤器在单个调用中包含属于博客文章的所有评论 但在我的例子中,我想要得到的数据没有关系 我有一个用户详细信息页面。在该页面上,用户可以选择用户名,还有一个下拉列表,用户可以从中选择自己所在的国家 因此,在客户端,我会做一些类似的事情: Country.find().$promise.then(function(countryData) { $scope.countries = countryData; }); Playe

在环回中,查询数据时很容易包含关系对象。例如,可以使用
include
过滤器在单个调用中包含属于博客文章的所有评论

但在我的例子中,我想要得到的数据没有关系

我有一个用户详细信息页面。在该页面上,用户可以选择
用户名
,还有一个下拉列表,用户可以从中选择自己所在的国家

因此,在客户端,我会做一些类似的事情:

Country.find().$promise.then(function(countryData) {
    $scope.countries = countryData;
});
Player.find().$promise.then(function(playerData) {
  $scope.player = playerData;
}
但是如果我得到更多我想填写的列表呢?例如,城市、州、颜色等

那我就得分别打很多电话了

是否有一种方法可以在一次调用中包含所有这些数据,即使它们没有关系?大概是这样的:

Player.find({ filter: { include: ["countries", "colors"] } }).$promise.then(function(data) {
   // some stuff
}

您可能希望尝试使用文档中的Where过滤器

查询两个特定事物的示例如下:

Post.find({where: {and: [{title: 'My Post'}, {content: 'Hello'}]}}, 
          function (err, posts) {
            ...
});

您可能希望尝试使用文档中的Where过滤器

查询两个特定事物的示例如下:

Post.find({where: {and: [{title: 'My Post'}, {content: 'Hello'}]}}, 
          function (err, posts) {
            ...
});

您可以在其中一个模型上创建一个远程方法,在内部进行调用并为您打包备份

如果不使用ES6,请使用一些promise库等待全部,然后返回

Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/

您可以在其中一个模型上创建一个远程方法,在内部进行调用并为您打包备份

如果不使用ES6,请使用一些promise库等待全部,然后返回

Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/

您可以在其中一个模型上创建一个远程方法,在内部进行调用并为您打包备份

如果不使用ES6,请使用一些promise库等待全部,然后返回

Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
我遇到问题并尝试使用此解决方案,但出现错误“因多个错误而失败,有关详细信息,请参阅
详细信息。”。在使用promise.all时,环回上似乎存在bug


您可以在其中一个模型上创建一个远程方法,在内部进行调用并为您打包备份

如果不使用ES6,请使用一些promise库等待全部,然后返回

Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
Model.getAll = function(next) {
  var promises = [];

  promises.push(Model.app.models.Country.find());
  promises.push(Model.app.models.Player.find());
  promises.push(Model.app.models.Color.find());

  Promise.all(promises)
    .then(function(results) {
      next(results);
    });
}

/**
  Register your remote method here
*/
我遇到问题并尝试使用此解决方案,但出现错误“因多个错误而失败,有关详细信息,请参阅
详细信息。”。在使用promise.all时,环回上似乎存在bug