Loopbackjs 如何从一个持久化模型的远程方法访问另一个持久化模型的环回数据?

Loopbackjs 如何从一个持久化模型的远程方法访问另一个持久化模型的环回数据?,loopbackjs,strongloop,loopback,Loopbackjs,Strongloop,Loopback,“严格使用”; module.exports=功能(城市){ City.GetCurrentPopulation=函数(req){ 变异群体; City.app.models.Pupulation.find({where{id:req.id}},//此行//给我一个错误,无法读取未定义的属性'find' 功能(请求恢复){ 人口=res.population; }); 响应:'+req.cname'的填充为'+Population; 请求(空,响应); }; 城市远程方法( “GetCurren

“严格使用”;
module.exports=功能(城市){
City.GetCurrentPopulation=函数(req){
变异群体;
City.app.models.Pupulation.find({where{id:req.id}},//此行//给我一个错误,无法读取未定义的属性'find'
功能(请求恢复){
人口=res.population;
});
响应:'+req.cname'的填充为'+Population;
请求(空,响应);
};
城市远程方法(
“GetCurrentPopulation”{
http:{
路径:'/GetCurrentPopulation',
动词:“GetCurrentPopulation”
},
返回:{
arg:'开始日期',
键入:“字符串”
}
}

);
City.app.models.Population只能在定义了城市和人口模型之间的某种关系时才起作用。否则它不会起作用。如果与其他模型没有关系,则需要使用获取对应用程序对象的引用

试着这样做:

var app = require('../../server/server');
module.exports = function (City) {

var Population = app.models.Population;
City.GetCurrentPopulation = function(req) {
     Population.find({where{id:req.id}}, function (err) {
    if (err) {
        return console.log(err);
    } else {
        // do something here 
    });
}

您可以参考此处的文档

您的问题是否与Loopback.js相关?请确保您的问题具有正确的标记集。此外,请添加有关您正在使用的环境和/或所涉及的库的信息,否则很难猜出问题是关于什么的。是的,它与Loopback.js相关,在中,我试图从现有postgresql数据源获取API。您可以发布您的代码吗?是的,我们添加了与我完全相似的代码段。我们省略了我的原始业务逻辑,以避免代码混乱。谢谢。var app=require(“../../server/server”);丢失并正在创建问题。您好,已以类似的方式为一个方法添加了远程挂钩。我正在尝试访问一个模型并在其中插入一条记录。已以上述方式添加对该模型的引用。var app=require('../../server/server');和var Population=app.models.Population;在导出函数内。On“Population.upsert()”它表示无法读取未定义的upsert。请尝试在函数内添加var Population=app.models.Population;语句,如this City.GetCurrentPopulation=function(req){var Population=app.models.Population;}谢谢,这对我很有效,你能帮我解决一个问题吗?这是@Dyo的链接,我想从一个模块访问到另一个模块,但遇到了一个错误。我想在持久化模型中获取文件名是否可以获取文件名