我正在尝试获得一个产品,包括它所属的类别。课程类别包含许多产品,产品属于同一类别。我是这样做的。
Product.find({include: 'Categories'})
当我尝试执行此查询时,出现错误。 “关系”类别“未定义为产品型号”。
我根据此处找到的环回文档定义了这种关系:https://docs.strongloop.com/display/public/LB/HasMany+relations。由于一个类别有很多产品。这看起来如下:
category.json
"relations": {
"products": {
"type": "hasMany",
"model": "Product",
"foreignKey": "categoryId"
}
},
在products.json中没有定义任何内容。我检查了复数当然,但他们都检查了。
当我尝试获取所有类别的所有产品时,它的工作没有问题。我很确定这是有意的。但我怎么能这样做呢?我已经尝试在Product中定义一个关系,如下所示:https://docs.strongloop.com/display/public/LB/HasOne+relations。但这需要在另一个对象中使用外键,因此显然只是用于一对一的关系。除此之外,我有点难过......有什么想法吗?
答案 0 :(得分:5)
当您从产品方面包含它时,您必须在product.json
中创建该关系正如您所提到的,产品只属于一个类别 - 这意味着关系名称应该是类别。
将其视为类似,loopback将调用函数Product.category
在product.json
中添加以下代码段"relations": {
"category": {
"type": "belongsTo",
"model": "Category",
"foreignKey": "categoryId"
}
},
现在尝试 -
Product.find({include: 'category'})