Dans une application Grails, j'aimerais ajouter une méthode foo() à toutes mes classes de contrôleurs. Je sais que je peux le faire en utilisant le code comme la fermeture à l'intérieur de doWithDynamicMethods d'un plug-in:Ajout de méthodes aux contrôleurs
application.controllerClasses.toList()*.metaClass*.foo = { println 'foo called' }
Cependant, je ne veux pas créer un plug-in juste à cet effet. Y a-t-il d'autres endroits où je peux faire ça? Je soupçonne qu'il pourrait être possible dans le init
fermeture de BootStrap.groovy
, mais je ne sais pas comment accéder à l'instance GrailsApplication
dans cette fermeture.
Merci, Don
pourquoi ne pas écrire un plugin? c'est le type parfait d'usecase pour un plugin. Vous n'avez pas besoin de le libérer, ni d'un gros plugin. modulariser une application via des plugins est un idiome de grails que vous devriez suivre si vous le pouvez. – Chii