我正在尝试查询子级文档,但是会引发以下错误。
错误:无法调用Project.find()。尚未设置find方法。 PersistedModel尚未正确附加到数据源!
我只能在资源管理器中看到项目文档,我也想查看其子文档用户。
project.json
{
"name": "Project",
"base": "PersistedModel",
"idInjection": true,
"options": {
"validateUpsert": true
},
"properties": {
"name": {
"type": "string",
"required": true
},
"description": {
"type": "string",
"required": true
}
},
"validations": [],
"relations": {
"user": {
"type": "belongsTo",
"model": "User",
"foreignKey": "userId"
}
},
"acls": [],
"methods": {}
}
project.js
'use strict';
module.exports = function(Project) {
Project.find().then((projects => console.log(projects))).catch((err) => console.log(err));
};
答案 0 :(得分:0)
尝试将代码更改为:
'use strict';
module.exports = function(Project) {
Project.find().exec().then((projects => console.log(projects))).catch((err) =>
console.log(err));
};
我在查询中添加了.exec()。
答案 1 :(得分:0)
Model.js
文件并不是真正用于执行事务的(尽管如果使用events也可能)。
服务器尚未启动,数据源尚未连接到模型。您可以访问并可以自定义的唯一信息是该模型的属性。
如果要在启动时执行操作,请将脚本放在server/boot
目录中。
server/boot/project.js
module.exports = (server) => {
const Project = server.models.Project;
Project.find().then((projects => console.log(projects))).catch((err) => console.log(err))
}