如何動態建立的映射列表 - 而不是:動態Grails的URL映射配置
class UrlMappings {
static mappings = {
"/helpdesk/user/$action?/$id?" (controller="helpdeskuser")
"/helpdesk/group/$action?/$id?" (controller="helpdeskgroup")
"/helpdesk/company/$action?/$id?" (controller="helpdeskcompany")
"/helpdesk/account/$action?/$id?" (controller="helpdeskaccount")
"/admin/company/$action?/$id?" (controller="admincompany")
"/admin/account/$action?/$id?" (controller="adminaccount")
}
}
這樣的僞代碼:
class UrlMappings {
static mappings = {
application.controllerClasses.each {
if(it.name.startsWith('helpdesk'))
"/helpdesk/${it.name}/$action?/$id?" (controller="${it.name}")
if(it.name.startsWith('admin'))
"/admin/${it.name}/$action?/$id?" (controller="${it.name}")
}
}
}
(我不明白什麼靜態映射是 - 哈希映射?自由變量?)
我想實現的是基於控制器類型的映射 - 例如幫助臺,管理員或用戶控制器。有一次,我建立了我想增加是基於URL的安全性映射,但是我不希望每個控制器單獨映射:
grails.plugins.springsecurity.interceptUrlMap = [
'/helpdesk/**': ['ROLE_HELPDESK','ROLE_ADMIN'],
]
這工作,謝謝。 – DavidC 2010-11-20 16:55:51
除了現在我猜控制器重定向不會返回正確的url。 –
DavidC
2010-11-20 18:24:43
mmm..it應Dashboard在我的應用程序呈現/管理/儀表板使用上述相同的代碼。 – 2010-11-20 19:08:41