gpt4 book ai didi

javascript - Strongloop:隐藏 PersistedModel 上的默认方法

转载 作者:行者123 更新时间:2023-12-03 06:24:51 26 4
gpt4 key购买 nike

我有一个模型定义为 PersistedModel ,因此与 mongodb 集合相关。我想实现以下目标:

  1. 要隐藏的默认 crud 方法
  2. 公开并映射到路线上的自定义远程方法 GET / (默认为 myModel.find())

到目前为止,我无法同时满足这两个要求:如果我将模型设置为公共(public),它会附带映射在标准路由上的整套内置方法,如果我将其设置为非-公开甚至我的自定义 Remote 也被隐藏。

最佳答案

您正在寻找的功能是:

MyModel.disableRemoteMethod(name, [isStatic])

这里是API docs .

不幸的是,您需要单独禁用每个方法......

另一种解决方案是创建两个不同的模型,一个是公共(public)的,一个不是(您可以在 server/model-config.json 中将 Public bool 值更改为 false文件。您不需要将“公共(public)”模型附加到数据源。

"MyPublicModel": {
"dataSource": null,
"public": true
},
"MyPrivateModel": {
"datasource": "db",
"public": false
}

面向公众的模型将是基类Model,而非公共(public)模型仍将是一个PersistedModel,且不暴露任何端点。您可以通过调用 MyPublicModel.js 文件中的 MyPublicModel.app.models.MyPrivateModel 来访问“Private”模型的功能。

(如果您需要任何说明,请发表评论)。

关于javascript - Strongloop:隐藏 PersistedModel 上的默认方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38700599/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com