【发布时间】:2016-08-20 20:04:58
【问题描述】:
我想创建一个类似 Twitter 的模型,但无法使其工作:
到目前为止的用户模型:
{
"name": "NsUser",
"base": "User",
...
"relations": {
"followers": {
"type": "hasMany",
"model": "User",
"through": "Follow",
"foreignKey": "followerUserId"
},
"followees": {
"type": "hasMany",
"model": "User",
"through": "Follow",
"foreignKey": "followeeUserId"
}
}
}
到目前为止关注的模型:
{
"name": "Follow",
"base": "PersistedModel",
...
"relations": {
"followee": {
"type": "belongsTo",
"model": "NsUser",
"foreignKey": "followeeUserId"
},
"follower": {
"type": "belongsTo",
"model": "NsUser",
"foreignKey": "followerUserId"
}
}
}
然后我在 Follow 模型中添加一个关系:
{
"created": "2016-08-19T09:23:18.175Z",
"id": "57b6d0068d55e5368538c8f4",
"followeeUserId": "578f7ad2ba0bfc40d78ef985",
"followerUserId": "5790bb3172e2738deb7532ee"
}
但无法在http://0.0.0.0:3008/api/NsUsers/5790bb3172e2738deb7532ee/followers 中得到结果 这是崩溃:
{
"error": {
"name": "Error",
"status": 500,
"message": "Relation \"user\" is not defined for Follow model",
"stack": "Error: Relation \"user\" is not defined for Follow model\n at processIncludeItem ....
}
}
我挖了一下,发现这里有一个类似的问题:https://github.com/strongloop/loopback-datasource-juggler/pull/394
但似乎我需要 loop-back-datasource-juggler >= 2.18.0 但我运行
npm update loopback-datasource-juggler
npm -v loopback-datasource-juggler
它告诉我:2.10.1
也许这是唯一的问题(我真的得到了最新版本吗??),或者是我的模型错了?
【问题讨论】:
标签: loopbackjs strongloop