Я экспериментирую с Grails 2.0.1 и прочитал документацию, но меня смущают новые динамические методы:
def book = Book.findOrSaveWhere(author: 'Daniel Suarez', title: 'Daemon')
def book = Book.findOrSaveByAuthorAndTitle('Daniel Suarez', 'Daemon')
Я могу представить себе ситуации, когда findOrCreateBy/Where
может пригодиться, но я не могу представить себе ситуации, в которых бы потребовался findOrSaveBy/Where
. Даже в тесте на github мотивация этого метода для меня не очевидна. Кажется, что в каждом тестовом случае вы либо явно хотите find
, либо явно хотите save
, поэтому наличие findOrSave
просто делает цель кода менее ясной.
Исходная запись JIRA для этих функций не обсуждает мотивацию и не дает никакого фона. Может кто-нибудь дать мне несколько сценариев, где эти методы будут полезны?