Поскольку я все чаще использую Grails, я нахожу, что пишу код в нескольких контроллерах, который действительно кажется, что он должен быть частью класса домена. Иногда этот код домена содержит вызов класса сервиса. Например, недавно я написал метод домена, который выглядел примерно так:
class Purchase {
// Injected
def paymentService
String captureTransactionId
Boolean captured
// ...
def capture() {
captureTransactionId = paymentService.capturePurchase( this )
captured = captureTransactionId != null
}
Я не чувствую себя откровенно грязным, написав этот код, но я не изучал лучшие методы дизайна в Grails, поэтому мне хотелось получить некоторые мнения.