私はこのコードを持っています:
void updateIndex() {
Visit.withNewSession {
def results = patient.visits.sort{ it.date }
results.eachWithIndex { item, index ->
item.index = index
}
}
}
これにより、save() なしで DB に保存されます。結果を findAll クエリを使用するように変更しました (選択したいだけだったので) が、変更が DB に保存されなくなりました。インデックスの変更は確認できますが、これらの変更は永続化されません。
def results = Visit.findAllByPatientAndTypeInList(
this.patient,
[Type.Test, Type.Junk]
).sort{ it.date }
これは GORM の落とし穴の 1 つですか? 私は明示的に保存を呼び出して(そしてエラーをチェックして)試みましたが、まだ運がありません。