検証して保存する直前に、ドメイン オブジェクトを確認します。
class MyDomain ... {
static belongsTo = [owner: AnotherClass]
...
}
「所有者」が正しく設定されています。次に、検証します。それは通過します。それから私は保存します。order_id が null であるという例外がスローされます。failOnError:falseで使っても投げますsave。
これは統合テストで発生します。
何か案は?
検証して保存する直前に、ドメイン オブジェクトを確認します。
class MyDomain ... {
static belongsTo = [owner: AnotherClass]
...
}
「所有者」が正しく設定されています。次に、検証します。それは通過します。それから私は保存します。order_id が null であるという例外がスローされます。failOnError:falseで使っても投げますsave。
これは統合テストで発生します。
何か案は?
インスタンスが制約に従って有効であっても、データベースに依存しているため、保存が失敗する可能性があります。あなたが持っていると想像してください:
class Person {
...
Integer age
...
static constraints = {
age nullable: true
}
}
そしてインスタンス:
def person = new Person(age: 9999)
また、データベース テーブルでは、人の年齢の最大値は999です。インスタンスは有効ですが、挿入するとエラーがスローされます。
同じことが、トリガーに依存する外部キーと操作でも発生する可能性があります。