Loopbackjs 如何筛选一对多模型关系,以便只返回活动记录?

Loopbackjs 如何筛选一对多模型关系,以便只返回活动记录?,loopbackjs,loopback,Loopbackjs,Loopback,在环回3中,我们使用mixin向所有模型添加了一个名为“active”的字段。当通过通用查询方法请求模型时,我们添加了代码,以按活动标志过滤并拒绝非活动记录 现在,我们希望为两国关系做同样的事情。无论何时导航关系,它都应该排除所有不活动的资源。如何做到这一点?我们将此添加到所有模型json文件中: "scope": { "where": { "active": true } }, 要删除,我们必须添加一个mixin: module.exports = f

在环回3中,我们使用mixin向所有模型添加了一个名为“active”的字段。当通过通用查询方法请求模型时,我们添加了代码,以按活动标志过滤并拒绝非活动记录


现在,我们希望为两国关系做同样的事情。无论何时导航关系,它都应该排除所有不活动的资源。如何做到这一点?

我们将此添加到所有模型json文件中:

  "scope": {
    "where": {
      "active": true
    }
  },
要删除,我们必须添加一个mixin:

  module.exports = function(Model, options) {
    console.log(`Adding softDelete mixin to model ${Model.name}`);
    Model.once("attached", function() {
      Model.deleteById = function(id, auth, cb) {
        // If your tables follow the TableNameID pattern for Ids, then do this: 
        //   `UPDATE ${Model.name} SET active=0 WHERE ${Model.name}ID = ?`;
        var query = `UPDATE ${Model.name} SET active=0 WHERE ID = ?`;

        Model.dataSource.connector.query(query, [id], function(err, result) {
          if (err) {
            console.log(err);
          }
          cb(null, { Success: "Record Deleted" });
        });
      };
    });
  };