2

私は次のようなドメインを持っています

class BusinessOrganization {

    static hasMany = [organizationBusinessTypes:OrganizationBusinessType]

    String name
    String icon

    static constraints = {
        name(blank:false,unique:true)
        icon(unique:true)
    }

    String toString() {
        return "${name}"
    }

}

初めてデータを保存するときは、エラーなしで保存されます。しかし、2回目に保存しようとすると、次のエラーが発生します。

Class java.sql.BatchUpdateException Message
Batch entry 0 insert into business_organization (version, icon, name, id) values ('0', '', '', '2') was aborted. Call getNextException to see the cause.


それは言います:

def save() {
23:        def businessOrganizationInstance = new BusinessOrganization(params)
24:        if (!businessOrganizationInstance.save(flush: true)) {
25:            render(view: "create", model: [businessOrganizationInstance: businessOrganizationInstance])
26:            return
27:        }

24 行目のエラーです。何が間違っていたのかわかりません。他のドメインでは、これは正常に機能します。誰か助けてください。私はGrailsを初めて使用し、ここで立ち往生しています。PostGreSQL を使用しています

4

2 に答える 2

0

入力してみる

insert into business_organization (version, icon, name, id) values ('0', '', '', '2')

(コンソールまたは pgAdmin で) データベースに直接入力し、例外をチェックします。

また、名前とアイコンの値に一意の制約を設定していることにも注意してください。保存したエントリでそれらを確認してください。

于 2013-08-11T22:38:36.580 に答える