【发布时间】:2013-09-19 17:12:59
【问题描述】:
我对如何在 ExtJS 4 中正确使用 Models/Stores/Proxies/Readers 感到困惑。我已经阅读了指南并查看了示例,但仍然看不到我的问题的解决方案。
目标:假设我正在使用 car 对象(存在模型),其中包含(除其他外):
- 汽车标识符(VIN#、品牌、型号、年份、颜色等)
- 所有权历史
- 维护历史记录
- 汽车部件的详细清单(发动机:{L-双缸,每缸 2 个气门 Desmodromic,风冷},前制动器:{},...)
假设我使用 VIN# 作为主键,并且我有一个 RESTfull API 设置,例如
GET /car // gets list of cars
GET /car/123abc // gets car with VIN# 123abc
现在,如果我在控制器中引用了 VIN#,我想做的是启动一个复杂的仪表板,它可能包含以下组件:
- 汽车部件的网格
- 维护成本与时间的图表
- 用于显示品牌、型号、年份的自定义面板
- 等
问题:
假设我有一个Car 模型和一个CarComponent 模型,我的服务器配置为发送嵌套数据(即没有用于直接处理CarComponent 的API)。理想情况下...我只想使用简单的GET /car/<the vin #> 从服务器请求汽车数据,并使用返回的数据填充复杂仪表板的所有组件。所以我的尝试策略是:
- 型号:
Car、CarComponent - 商店:
Cars - 代理:附加到
Car模型的单个休息代理 - 不知何故使用
Car的嵌套属性来填充组件(例如组件网格)
或者我需要为组件单独存储吗?另外,我不知道商店是如何运作的。我不想从服务器加载所有汽车.. 只是指定的汽车。我只是对如何将模型/代理/商店串在一起来完成我需要的事情感到困惑......
【问题讨论】: