从 strongloop/loopback 获取连接数据
Getting joined data from strongloop/loopback
如何从两个连接的表中获取数据?
假设,有两个模型称为 Category (CategoryId, CategoryName) 和 Product(ProductId, ProductName, CategoryId),有没有办法得到这样的结果:(ProductId, ProductName, CategoryId, CategoryName)
您的类别模型和产品模型之间应该存在关系。一个类别 有许多 产品,每个产品 属于 一个类别。所以你的模型 json 文件应该是这样的
类别:
{
"name":"Category",
"properties":{
"CategoryId": {
"type":"Number",
"id":1
},
"CategoryName":{
"type":"String"
}
},
"relations": {
"products": {
"type":"hasMany",
"model":"Product",
"foreignKey":"CategoryId"
}
}
}
产品
{
"name":"Product",
"properties":{
"ProductId: {
"type":"Number",
"id":1
},
"ProductName":{
"type":"String"
},
"CategoryId": {
"type":"Number"
}
},
"relations": {
"category": {
"type":"belongsTo",
"model":"Category",
"foreignKey":"CategoryId"
}
}
}
当然,这些 json 定义必须用相应的选项和数据源属性完成,只有您知道。
这两个模型之间的关系 将向环回浏览器添加端点,以便您可以查询特定类别的产品:
GET /api/Categorys/:id_category/products
产品所属的类别
GET /api/Products/:id_product/category
请注意,除非您为 Category 指定复数选项,否则其复数将为 Categorys。这不是错字。
最后,如果您想查询产品及其类别,可以使用 include 过滤器
GET /api/Products/:id_product?filter[include]=category
希望对您有所帮助。
如何从两个连接的表中获取数据? 假设,有两个模型称为 Category (CategoryId, CategoryName) 和 Product(ProductId, ProductName, CategoryId),有没有办法得到这样的结果:(ProductId, ProductName, CategoryId, CategoryName)
您的类别模型和产品模型之间应该存在关系。一个类别 有许多 产品,每个产品 属于 一个类别。所以你的模型 json 文件应该是这样的
类别:
{
"name":"Category",
"properties":{
"CategoryId": {
"type":"Number",
"id":1
},
"CategoryName":{
"type":"String"
}
},
"relations": {
"products": {
"type":"hasMany",
"model":"Product",
"foreignKey":"CategoryId"
}
}
}
产品
{
"name":"Product",
"properties":{
"ProductId: {
"type":"Number",
"id":1
},
"ProductName":{
"type":"String"
},
"CategoryId": {
"type":"Number"
}
},
"relations": {
"category": {
"type":"belongsTo",
"model":"Category",
"foreignKey":"CategoryId"
}
}
}
当然,这些 json 定义必须用相应的选项和数据源属性完成,只有您知道。
这两个模型之间的关系 将向环回浏览器添加端点,以便您可以查询特定类别的产品:
GET /api/Categorys/:id_category/products
产品所属的类别
GET /api/Products/:id_product/category
请注意,除非您为 Category 指定复数选项,否则其复数将为 Categorys。这不是错字。
最后,如果您想查询产品及其类别,可以使用 include 过滤器
GET /api/Products/:id_product?filter[include]=category
希望对您有所帮助。