GORM cannot create new entity using addTo
私はそれが本当だとは思わない、次の作品に?。:
Sheet.groovy
class Sheet {
// consider using GORM auto timestamp properties for these Dates...
Date created
Date modified
String title
int sheetIndex
String type
static hasMany = [sheetLayouts : SheetLayout]
}
私はあなたが保存しようとした後
errors
プロパティを検査示唆
def now = new Date()
Sheet s = new Sheet(created: now, modified: now, title: 'Some Title', sheetIndex: 42, type: 'wilbur')
s.addToSheetLayouts(xPosition: 0, yPosition: 1, size: 'satas')
s.save(flush:true, failOnError: true)
:あなたはまた、このような何かを行うことができ
def now = new Date()
Sheet s = new Sheet(created: now, modified: now, title: 'Some Title', sheetIndex: 42, type: 'wilbur')
SheetLayout sl = new SheetLayout()
sl.setxPosition(0)
sl.setyPosition(1)
sl.setSize("satas")
s.addToSheetLayouts(sl)
s.save(flush:true, failOnError: true)
:インスタンスを永続化する
SheetLayout.groovy
は
class SheetLayout {
String size
int xPosition
int yPosition
Sheet sheet
static belongsTo = [sheet : Sheet]
}
コードそして/またはfailOnError:true
を使用してください。
EDIT:
私はちょうどあなたの例を再読み込みし、あなたのSheetLayout
クラスを使用すると、初期化されていないreport
性質を持っているように見えます。 nullable: true
でそれを設定していない限り、それはあなたの問題の一部です。
'static belongsTo = [sheet:sheet]'がある場合は 'private sheet sheet'は必要ありません。しかし、私はそれが問題を解決するかどうかわからない –
私は試していたが、それはまだ助けていないありがとう。 これは、SheetLayoutを保存しようとしているときに、静的なhasMany = [sheetLayouts:SheetLayout]のエンティティレポートがあるためです。これは、SheetLayoutオブジェクトのreport_idに値を設定する必要があるためです。 –
エラースタックトレースがあれば投稿できますか? –