2016-08-13 46 views
0

它是否能够实现从两个表如何从两个表中使用REST请求

得到结构响应程序的功能,我有两个表获得结构化JSON包含公司和电话包含每家公司的电话号码。 一家公司 - >通过companyID

相关的许多手机我需要的正是这种结构:

{ 
    "resource": [ 
    { 
     "companyId": 1, 
     "companyName": "Apple", 
     "companySubject": "Security", 
     "phones": [ 
     { 
      "name": "tel1", 
      "phone": "+178548555" 
     } 
     ] 
    }, 
    { 
     "companyId": 2, 
     "companyName": "Samsung", 
     "companySubject": "IT", 
     "phones": [ 
     { 
      "name": "tel1", 
      "phone": "+178548555" 
     }, 
     { 
      "name": "tel2", 
      "phone": "+178548555" 
     }, 
     { 
      "name": "tel3", 
      "phone": "+178548555" 
     } 
     ] 
    }, 
    { 
     "companyId": 3, 
     "companyName": "LG", 
     "companySubject": "Accounting", 
     "phones": [ 
     { 
      "name": "tel1", 
      "phone": "+178548555" 
     }, 
     { 
      "name": "tel2", 
      "phone": "+178548555" 
     } 
     ] 
    } 
    ] 
} 

问题是,他们在不同的表,我无法弄清楚如何实现它。

我用dreamfactory为后端

回答

1

如果表有一个外键关系(在数据库中定义),那么你可以简单地通过调用get {service_name}/_table/{table_name}?related={relationship_name} 在你上面的例子,这可能是这样的GET my_service/_table/Company?related=phones_by_companyId获取手机 您可以通过查看DreamFactory Schema选项卡中的表结构信息来获取关系名称,甚至可以为此关系创建一个别名,以使关系名称仅为phonesWorking with related data

如果表格不相关,可以使用DreamFactory的虚拟外键来关联它们。有关VFK的更多信息可以发现on the wiki