环回父模型 - 如何设置属性和创建子模型
loopback parent model - how to set properties and create child models
我有几个环回模型,我想为它们添加共享功能。
我不太确定我是否理解 loopback 的 extend
方法,但我创建了一个 Dictionary
模型,将其他模型 base
属性 设置为 Dictionary 并卡在了这里。
基本上我需要创建一个子模型的实例,获取一些数据并构建一个散列。然后我计划在启动脚本中多次调用 app.models.ChildModel.createHash() 来为每个模型创建字典。
我不确定从哪里开始.. 我如何将子 class 名称(或实例)传递给父?我显然需要它来查询数据。
我为具体的 Regions
模型制定了一个可行的解决方案
module.exports = function(Regions){
var countriesHash={};
Regions.setup=function(next){
Regions.find({where:{type:'Country'}}, function(err, countries){
countries.forEach(function(country){
countriesHash[country.id]=country;
});
console.log('hash built');
next();
});
};
但我想将其重构为抽象 Dictionary
class 并在具体模型中设置一些属性,例如子名称和 where
。
您可以使用 mixin
(here) 将共享功能放在那里并在模型中使用。
你也可以给他们一些选择。
我有几个环回模型,我想为它们添加共享功能。
我不太确定我是否理解 loopback 的 extend
方法,但我创建了一个 Dictionary
模型,将其他模型 base
属性 设置为 Dictionary 并卡在了这里。
基本上我需要创建一个子模型的实例,获取一些数据并构建一个散列。然后我计划在启动脚本中多次调用 app.models.ChildModel.createHash() 来为每个模型创建字典。
我不确定从哪里开始.. 我如何将子 class 名称(或实例)传递给父?我显然需要它来查询数据。
我为具体的 Regions
模型制定了一个可行的解决方案
module.exports = function(Regions){
var countriesHash={};
Regions.setup=function(next){
Regions.find({where:{type:'Country'}}, function(err, countries){
countries.forEach(function(country){
countriesHash[country.id]=country;
});
console.log('hash built');
next();
});
};
但我想将其重构为抽象 Dictionary
class 并在具体模型中设置一些属性,例如子名称和 where
。
您可以使用 mixin
(here) 将共享功能放在那里并在模型中使用。
你也可以给他们一些选择。