如何向Grails中的hasMany添加默认值?

如何向Grails中的hasMany添加默认值?,grails,gorm,grails-domain-class,grails-2.2,Grails,Gorm,Grails Domain Class,Grails 2.2,说我有一本域名书 static hasMany = [reader:Reader] 和班级读者 String fullName 现在我想添加全名读者:“PersonA”、“PersonB”、“PersonC”,在图书领域中使用defualt 请告诉我如何做到这一点?我对Grails非常陌生。您可以在应用程序的Configuration文件夹中创建名为BootStrap的类,并向其添加init()方法。此方法将在应用程序启动之前执行。例如: class BootStrap { def

说我有一本域名书

static hasMany = [reader:Reader]
和班级读者

String fullName
现在我想添加全名读者:“PersonA”、“PersonB”、“PersonC”,在图书领域中使用defualt


请告诉我如何做到这一点?我对Grails非常陌生。

您可以在应用程序的Configuration文件夹中创建名为
BootStrap
的类,并向其添加
init()
方法。此方法将在应用程序启动之前执行。例如:

class BootStrap {

    def init() {
        def readerA = Reader.findOrCreateByFullName("PersonA")
        def readerB = Reader.findOrCreateByFullName("PersonB")
        def readerC = Reader.findOrCreateByFullName("PersonC")
        def readers = [readerA, readerB, readerC]
        def book = new Book()
        for(reader in readers){
           book.addToReader(reader)
        }
        book.save(flush: true)
    }
}

我希望无论何时创建新书,都能将读者添加到书中,而不需要我明确地将读者添加到书中……好的。您应该为Book域编写自定义构造函数,向其中添加读卡器。代码完全相同,但不应创建新书(读者应添加到此)。