我的Kendo数据源架构必须是什么样的?

时间:2013-02-06 14:53:35

标签: kendo-ui kendo-grid

给这个json?

[
 { 
  "CompanyId":20,
  "CompanyName":"Walmart",
  "CompanyContacts":[
                     {
                      "CompanyId":20,
                      "FirstName":"Bob",
                      "LastName":"Green",
                      "Email":"bob@test.com",
                      "Phone":"1234567",
                      "IsActive":false
                     }
                    ]
 }
]

1 个答案:

答案 0 :(得分:13)

KendoUI数据源schema.Model目前不支持与相关实体嵌套的json或json。它需要平面数据。希望将来schema.Model将支持在模型定义中将复杂json映射到flat。但是,您仍然可以在网格中使用复杂数据,而无法在schema.Model定义中定义它。

映射实际上是在网格的字段定义中完成的。 另外,请参阅schema docs,您可以使用schema.parse或schema.data函数解析数据,以手动将嵌套数据转换为平面数据。

以下是您的数据的fiddle示例

{
    field : "CompanyContacts[0].FirstName",
    title: "First Name"
}

另请注意,如果您不需要父记录CompanyName和CompanyID,因为您的CompanyContacts中的CompanyID与您当前定义数据的方式相同,那么您可以使用架构的data属性来指示记录的起点像这样

schema : {
    model: mySchema,
    data: "CompanyContacts"
},