Как переопределить динамический поиск Grails?

Скажем, у меня есть класс Person с полем name. Я могу выполнить Person.findByName, но что, если я захочу переопределить этот метод, чтобы обеспечить кеширование запроса? Как переопределить этот метод динамического поиска?


person Champ    schedule 06.01.2015    source источник
comment
Не. Используйте сервис и кэшируйте метод в сервисе. Это правильный способ реализации этого шаблона.   -  person Joshua Moore    schedule 06.01.2015
comment
@JoshuaMoore Должно ли быть эквивалентно, если у меня есть Person.forName, который делает то же самое, что вы предложили делать в сервисе?   -  person Champ    schedule 06.01.2015
comment
Вы можете реализовать статический метод в классе предметной области.   -  person Andriy Budzinskyy    schedule 06.01.2015


Ответы (1)


Вы можете просто написать:

Person.findByName("some-name", [cache: true])
person Shashank Agrawal    schedule 06.01.2015
comment
Да, я знаю об этом. Но я хочу изменить «Person.findByName (some-name)», чтобы по умолчанию он был кешируемым запросом. Не нужно, чтобы кодировщик не забывал добавлять ', [cache: true]' везде, где используется динамический поиск. - person Champ; 05.02.2015