正确JSON响应
问题描述:
林很难找到最佳的解决方案来解决这个问题:正确JSON响应
我有2个表,
TABLE order contains
pickup_address,
delivery_address
两个字段都是外键至极参考
TABLE address contains,
id,
city
当然还有其他列,但它们与查询无关。 Basicly我做的是:
SELECT * from order LEFT join address ON (pickup = id) LEFT join address ON (delivery = id)
类似的东西:)所以我有一个排,结合2个地址转换成订单。这不是一个干净的解决方案,我认为。
即时消息试图做的是让用户查询我的API这个订单,我不知道我应该如何返回所有的数据。
- 我是否仅返回订单TABLE的行,并让他们再次询问我的API每个address_id的详细信息?
- 我是否将所有表格合并返回一个完整的行?
-
我是否在JSON中分隔订单和地址?像这样:
{ orders: [ { id: "1", pickUpAddress: "1", deliveryAddress: "2", } addresses: [ { id: "1", .... }, { id: "2", } ] }
- 任何其他的选择吗?
Basicly我成为当前JSON响应,但是IM回复,每次约20+订单。这是否有效?
{
code: 200,
data: {
orders: [
{
id: "1",
customer_id: "cust1",
reference: "asdfad",
state: "4",
pickUpAddress: "1",
pickUpDate: "2012-02-21",
deliveryAddress: "2",
deliveryDate: "2012-02-23",
pickup_street: "street 1",
pickup_housenumber: "1",
pickup_country: "belgium",
pickup_zipcode: "1000",
pickup_city: "brussels",
delivery_street: "street 2",
delivery_housenumber: "2",
delivery_country: "belgium",
delivery_zipcode: "1000",
delivery_city: "brussels"
}
]
}
}
答
我会返回所有的数据,除非有理由不这样做(例如大量)。 你为什么不呢?
但是,我会允许他们通过ID获取地址。给他们尽可能多的选择,你可以。
编辑我的组织职位。这会有效吗? – Sam 2012-02-06 16:24:35
我想这取决于它是否有效。用户是否总是需要所有这些细节?如果是这样,不妨给他们提供。如果她只需要一次查看一个订单的地址,则让她拨打两个不同的电话。 – 2012-02-06 16:37:14
以及我不知道我想要什么。如果我一次拿到它们,用户只需要等待一次。如果我得到他们,当用户选择订单ID我必须重新同步,他必须等待每一次。 – Sam 2012-02-06 19:30:50