2016-07-07 53 views
0

如果我有订单的用户记录,也记载,它是正确的,以拯救他们这样的:如何检索json文件中的两个对象的数据?

{ 
    "users": [ 
     {"id": "1", "name": "Allan", "age": "40"}, 
     {"id": "2", "name": "Jack", "age": "50"} 
    ], 
    "orders": [ 
     { "id": "1", "item": "item 1", "userId": "1"}, 
     { "id": "2", "item": "item 3", "userId": "1"}, 
     { "id": "1", "item": "item 4", "userId": "1"}, 
     { "id": "1", "item": "item 51", "userId": "1"}, 
     { "id": "2", "item": "item 4", "userId": "1"} 
    ] 
} 

,你可以看到我是从SQL世界未来,所以我保存的订单'带外键的数据,是将这些数据保存为json的正确方法,如果有的话,我怎样才能让所有用户都有订单?

谢谢!

+0

把你的看法和控制器代码 – Developer

+0

只需将它们加入服务器。 – dfsq

+0

我没有得到你的问题**我怎么能得到所有的用户与订单?** –

回答

0

如果你的JSON对象是在上面提到的结构,你可以使用此代码来筛选订单

var oJson = { 
    "users": [ 
     {"id": "1", "name": "Allan", "age": "40"}, 
     {"id": "2", "name": "Jack", "age": "50"} 
    ], 
    "orders": [ 
     { "id": "1", "item": "item 1", "userId": "1"}, 
     { "id": "2", "item": "item 3", "userId": "1"}, 
     { "id": "1", "item": "item 4", "userId": "1"}, 
     { "id": "1", "i`enter code here`tem": "item 51", "userId": "1"}, 
     { "id": "2", "item": "item 4", "userId": "1"} 
]} 
    for(var i=0; i<oJson.users.length;i++){ 
     for(var j=0; j<oJson.orders.length;j++){ 
     if (oJson.users[i].id == oJson.orders[j].userId) { 
      console.log(oJson.orders[j].item, oJson.orders[j].userId) 
      //your logic here 
     } 
     } 
    } 

但最好使用SQL关节合并订单,并返回这样的对象

{ 
"users": [ 
    {"id": "1", "name": "Allan", "age": "40","orders": [{ "id": "1", "item": "item 1", "userId": "1"},{ "id": "2","item": "item 3", "userId": "1"},{ "id": "1", "item": "item 4", "userId": "1"},{ "id": "1", "item": "item 51", "userId": "1"},{ "id": "2", "item": "item 4", "userId": "1"} 
]}, 
    {"id": "2", "name": "Jack", "age": "50","orders":[]} 
]} 
0

取为JSON文件中的对象分成两个varible

VAR一个= value.users;

var b = value.orders;

值是什么,但整个JSON文件

那么你可以对对方喜欢

一个[0] == .ID B匹配他们。[0] .ID