在我的MongoDB数据库中,我有这些数据:
在用户集合中:
{
"_id" : ObjectId("5a2c725621691170792fbc3e"),
"username" : "username",
"email" : "test@gmail.com"
}
在内容集中:
{
"_id" : ObjectId("5a2c7857b4f9e44a4d618bfd"),
"title" : "Article title",
"author" : ObjectId("5a2c725621691170792fbc3e")
}
所以我在Loopback中创建了两个模型,其关系为hasMany / belongsTo:
{
"name": "user",
...
"properties": {
"username": {
"type": "string",
"required": true
},
"email": {
"type": "string",
"required": true
}
},
"relations": {
"contents": {
"type": "hasMany",
"model": "content",
"foreignKey": "author"
}
}
}
内容有作者:
{
"name": "content",
"properties": {
"title": {
"type": "string",
"required": true
}
},
"relations": {
"author": {
"type": "belongsTo",
"model": "user",
"foreignKey": "author"
}
},
}
这很好,Loopback给了我那些URL:
400密钥不匹配:content.author:function(){[native code]}, user.id:5a2c725621691170792fbc3e
我无法弄清楚什么是错的,谢谢!
答案 0 :(得分:0)
我设置了一个空项目并添加了所描述的模型和关系,它可以通过内容通过用户和用户获取内容。
在您的示例数据中,我看到内容中的 author 在值与 id 不同>用户。这是问题或实际数据中的错字吗?
“_ id”:ObjectId(“5a2c725621691170792fb c3e ”)
“author”:ObjectId(“5a2c7af721691170792fb fd3 ”)