Il modo migliore per creare una sezione di amministrazione in Grails
Domanda
Ciao,
Mi chiedo qual è il modo migliore per creare una sezione di amministrazione (backend) in un'app Grails?
Voglio creare una cartella "Admin" nella cartella "controllers" di Grails per inserire tutti i miei controller di amministrazione.Ma allora dovrò creare manualmente la mappatura degli URL per ciascun controller di amministrazione?
Ho già generato tutto il mio GSP frontend con il file genernate-all
comando che richiede a Classe di dominio ma so come posso generare il mio CRUD per la mia sezione di amministrazione (con la stessa classe di dominio).Sono fregato?
Grazie mille per i tuoi consigli!
Soluzione
La mia preferenza per questo è di avere una distinta domanda di amministrazione. Stick tutte le classi di dominio in un plugin e che va installato plugin nella sia l'applicazione admin e l'appilcation consumatore.
In questo modo, è possibile modificare i controllori ai vostri cuori contenuto e non preoccuparsi di utenti finali li colpisce. I servizi condivisi possono anche essere nel plugin dominio.
C'è un file speciale che si può mettere nel vostro graal-app / conf chiamato BuildConfig.groovy cui è possibile specificare i plugin "locali" come il plugin di dominio che vengono automaticamente portato nella classpath senza dover confezionare / installare il plugin. Rende facile eccellente.
Altri suggerimenti
Molto tardi per questo, ma ecco un modo che potrebbe essere utile, almeno per un'applicazione più piccola (sto usando Grails 2.0):
In conf/UrlMappings.groovy:
class UrlMappings {
static mappings = {
"/admin/$controller/$action?/$id?"{ constraints { // apply constraints here
} }
'/admin' (controller: 'yourMainController', action: 'list')
'/' (controller: 'public', action:'index')
// For the PublicController to handle *all* other requests (like /foo/bar/):
// '/**' (controller: 'public', action:'index')
"500"(view:'/error')
}
}
Nota Come puoi vedere, questo non è stato protetto in alcun modo.