【发布时间】:2015-04-08 12:03:25
【问题描述】:
我一直在使用 Loopback 创建 API。该文档通常非常好,但并没有真正回答我关于以下问题的问题:我如何扩展(而不是替换)内置模型?
最有希望的信息来自this page - 它指定了通过继承从另一个类建立一个类的方式。这很有用但并不理想 - 例如,我想从库存模型创建与自定义模型的关系 - “角色”应该有很多“权限”。
我提到的页面还显示了一个位于 common/models/<modelName>.js 的 Javascript 文件,其中声明您可以根据您提供的属性和选项“扩展”模型。服务器似乎从来没有命中文件...例如 - 我在common/models/role.js 中放置了一个文件,内容如下:
var properties = {
exampleProperty: {type: String, required: true}
};
var user = loopback.Model.extend('Role', properties);
console.log('test');
首先,它似乎根本没有命中文件(没有给出console.log 输出)。其次,显然是因为第一点,它没有用我创建的属性扩展模型。
是我遗漏了一些明显的东西还是文档完全错误?
【问题讨论】:
-
这里有同样的问题。在解释如何扩展内置模型时,文档似乎相当不完整 - 他们似乎建议你可以扩展,但像你一样,我发现使用例如 user.json/.js 不是一个选项。你有没有按照这里的建议尝试继承?我担心它会破坏访问令牌或通常会导致更多问题。
-
您好,继承是要走的路。如果您扩展基本
User类,您将收到相同的方法,并且它也会以某种方式为您计算出 accessToken 的东西。
标签: node.js inheritance orm loopbackjs