2011-12-22 42 views
0

我认为ExtJS 4中的嵌套数据加载在现实世界中是不可能的。例如,我有一些训练模型,用户和一些模型,它描述了如何将训练分配给用户,哪些用户分配了训练等。我认为在PHP模型(我使用ZF 1.x)中加入到获取用户的名字和姓氏,而不是他们的标识符,并且合并两个选择的数据是错误的(选择连接与tracing和trainings-to-users表并从用户中选择标识符在上面的连接标识符中) 。好的做法是在View中做,不是吗? 但ExtJS 4嵌套数据加载告诉我:做分层结构(有很多嵌套数据的重复!)并将它传递给我。为什么我需要做这项工作?我会更好地合并控制器中的数据! 我的最后一个问题是:如果我有JSON是这样的:ExtJS 4以其他方式嵌套数据加载

{ 
trainings: [{"id":"1", "user_id":278,"assigner_id":30, ...}, {...}], 
users: ["278": {"firstname":"Guy", "lastname":"Fawkes"}, "300":{....}, ...] 
} 

我可以创建从这个数据的另一个嵌套的数据加载? 谢谢。

回答

0

是的,你可以......排序。一种方法是为用户和培训定义单独的商店,然后使用loadData(JSON.users)加载预取的数据。

+0

是的,现在我用这种方式做了一些事情......但是如果我想要1)从列创建渲染器2)使用网格分页器 - 如何在第二个存储未加载时停止网格渲染并在加载时启动它? – 2011-12-23 06:14:36

+0

不知道我关注,但网格会自动侦听存储加载事件。 – dbrin 2011-12-23 07:03:08

+0

是的,但网格只有一个商店,并且当它的商店中的数据已经加载时,第二个商店中的数据尚未加载,因此它们不能用于列渲染器。 – 2011-12-23 08:40:41