我已經用路由器v2的emberjs用於一些用例,它的工作非常好。我通過點擊{{linkto ..}}結構(使用相關的嵌套資源)來增加頁面的複雜度。用例的emberjs方式是什麼:一條路由(路由器v2)應該顯示兩個模型?
但有時可能需要一次顯示兩個(或更多)不同的模型。
例如:
我有模型的人和模型寵物。
喜歡的東西:
DS.RESTAdapter.configure("plurals",{"person" : "people"})
App.Store = DS.Store.extend({
revision: 11,
adapter: DS.RESTAdapter.create({namespace: 'restservice'})
});
var attr = DS.attr;
App.Person = DS.Model.extend({
firstName: attr('string'),
lastName: attr('string'),
birthDay: attr('string'),
pets: DS.hasMany('App.Pet')
});
App.Pet = DS.Model.extend({
name: attr('string'),
species: attr('string'),
person: DS.belongsTo('App.Person')
});
對於型號人與寵物的某種原因情況存在,但是這兩種模式之間的關係尚未確定。
在一個通過{{linkto ..}}構造調用的頁面中,我想實現一個 人物分配編輯器。 在這種情況下,我想顯示兩個列表:
- 人
- 寵物
通常該頁面的路線將僅對應於一個模型,但對人的名單列表 - 寵物分配編輯器,兩個模型應該一次顯示(沒有額外的用戶干預)是完全自然的。
什麼是最好的實現方式。 我應該加載沒有佈線概念的模型嗎?
確實存在的方式是這樣的:
(represent the person - pet assigment editor 'page')
|
|
{{linkto ..}} ------->資源路徑-----> '分裂重定向'
- ----------------> resource-route person
- ----------------> resource-route pet
(like a url to a frame set which bear two (or more) 'parallel' requests)
分裂重定向後,我有3條活動路線:對人
- 資源路線 - 寵物分配新建分配FY編輯
- 資源路線的人
- 資源路由寵物
之後,正常的增量鑽(深嵌套的路線:選擇人,選擇的寵物。)行動可能會發生。
我可以實現我的用例沒有這樣的概念,但我喜歡路由的概念,並有興趣在更復雜的情況下使用它。
是否存在這樣的概念? 什麼是emberjs方式來處理這種情況?
問候
安德烈亞斯