現在、異なるコントローラー間などでメソッドを共有する必要がある場合はprocessParams(params)
、継承またはサービスを使用します。どちらのソリューションにもいくつかの不便があります:
- 継承では、多重継承を使用できません。つまり、すべてのコントローラー ユーティリティ メソッドを 1 か所に配置する必要があります。また、grails には、開発モードで Base Controller クラスのコード変更を検出しないバグがあります (アプリを再起動する必要があります)。
- サービスでは、params、session、flush などの注入されたすべてのプロパティにアクセスすることはできません...
だから私の質問は:複数のコントローラにアクセス可能ないくつかの一般的なメソッドを使用する他の方法はありますか?