我仍在學習Extjs和mvc,所以我有一個設計問題,我確信有人可以爲我解答。我的問題是:Extjs4 mvc設計思路
我有2個控制器,處理兩個不同的意見。調用兩個控制器中的任何一個來根據用戶類型呈現正確的視圖。所以在我的情況下,如果用戶是管理員,那麼他們將獲得基於憑證的管理視圖,如果該人是標準用戶,則他們將獲得標準視圖。應該將決策邏輯放在app.js中,還是應該有另一個控制器來決定調用哪個控制器?
的一種方式,我想:
控制器管理
Ext.define('adminController', {
// handles admin
})
控制器標準用戶
Ext.define('standardController', {
// handles standard
})
App.js
Ext.application({
name: 'MTK',
autoCreateViewport: true,
if(admin) {
controllers: ['adminController']
}
else(std){
controllers: ['standardController']
}
});
另一個想法:
控制器管理
Ext.define('adminController', {
// handles admin
})
控制器標準用戶
Ext.define('standardController', {
// handles standard
})
主控制器
Ext.define('mainController', {
if(admin){
call adminController
}
else(std){
call standardController
}
})
我已經有一個登錄重定向到位。我想我應該已經提到過,但無論如何,我有一個會話,我獲得了用戶的LDAP信息。所以我想我可以使用另一個控制器來確定要呈現哪個視圖。 – reagan
@rob當然你可以,但我不會在用戶角色或訪問前端控制器方面做出太多的決定。你應該在服務器端解決它們,正如我所說的登錄後重定向一個視圖,每個角色獲得setuped或返回rolenased信息到登錄 - cmp下載什麼 – sra
感謝您的幫助 – reagan