私がやりたいことの1つは、データベースのエントリをバージョン管理することです。私のupdateメソッドでは、オブジェクトの新しい2番目のバージョンを保存したいと思います。例えば
def update = {
def VariantInstance = Variant.get(params.id)
def NewVariantInstance = VariantInstance
NewVariantInstance.properties = params
if (VariantInstance) {
if (!VariantInstance.hasErrors()) {
VariantInstance.save()
NewVariantInstance.save()
flash.message = "${message(code: 'default.updated.message', args: [message(code: 'Variant.uniqueIdentifyingName', default: 'Variant'), VariantInstance.id])}"
redirect(action: "list")
}
else {
render(view: "edit", model: [VariantInstance: VariantInstance])
}
}
else {
flash.message = "${message(code: 'default.not.found.message', args: [message(code: 'Variant.uniqueIdentifyingName', default: 'Variant'), params.id])}"
redirect(action: "list")
}
}
これにより現在のものが保存されますが、新しいものは作成されません。私は何が間違っているのですか?