如何在 strongloop 环回中创建挂钩以进行软删除

How to create hook in strongloop loopback for soft delete

我希望在Strongloop Loopback 中为所有模型创建hook 以实现软删除。

我希望将 where 过滤器自动包含为 deleted:0,以便只检索未删除的数据。我想要相同的验证逻辑,自动将我的查询与 deleted:0 条件连接起来。我想要关联,所以只获取相关数据。

为了从数据库端实现这一点,我创建了一个默认值为 0 的标志。如果我想获取已删除的记录。我只是附加 deleted:1 以便它覆盖基本条件。昂给我相关的。

我是 PHP 开发人员,为了在框架中实现这一目标,我在基本模型的 beforeFilter 中附加了条件。请在这里帮助我使用 Strongloop Loopback。

您可以在模型上设置默认范围。这将应用于该模型的所有查询。您可以创建一个具有该默认范围的基础模型,并在您正在实施软删除的其他模型中继承该基础模型。

{
  "name": "Base",
  "properties": {
    ...
  }
  "scope": {
    "order": "name",
    "limit": 100
    "where": {
      "deleted": 0
    }
  }
}

然后在您想要使用默认范围的模型中,您将添加基础模型作为将使用软删除的模型的 base: 属性。

{
  "name": "Product",
  "plural": "products",
  "base": "Base",
...
}

您可以在此处的文档中阅读更多内容:Default Scope in StrongLoop