Wie kann ich dynamisch eine Liste der Zuordnungen bauen - statt:Dynamische Grails URL Mapping Config
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")
}
}
so etwas wie dieses Pseudo-Code:
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}")
}
}
}
(Ich verstehe nicht, was die statische Zuordnungen sind - eine Hash-Karte? freie Variablen?)
Was ich versuche zu erreichen, sind Zuordnungen basierend auf dem Controller-Typ - z Helpdesk-, Admin- oder Benutzer-Controller. Sobald ich die Zuordnungen eingerichtet habe ich Sicherheit auf URLs basierend hinzufügen möchten, aber ich möchte nicht jeden Controller einzeln zur Karte:
grails.plugins.springsecurity.interceptUrlMap = [
'/helpdesk/**': ['ROLE_HELPDESK','ROLE_ADMIN'],
]
Das funktioniert, danke. – DavidC
Außer jetzt und ich denke, Controller Redirect gibt nicht die richtige URL zurück. –
DavidC
mmm..it sollte Dashboard in meiner App rendert/Admin/Dashboard mit dem gleichen Code wie oben. –