Grails. Nach dem Aufruf von save ist die ID null
Ich habe bereits danach gesucht, kann aber immer noch nicht herausfinden, was ich falsch mache. Nach dem Anrufsave()
das Domain-Objektid
istnull
.
Ich habe gelesen, dass es passieren wird, wenn beim Speichern des Objekts ein Problem auftrittsave(flush:true)
sollte einen Fehler auslösen, wenn dies der Fall ist, aber es ist nicht der Fall. Schau dir meinen Code und die Ausgabe an:
def pic = new Picture(title:'XX', path:"XXX")
album.addToPictures(pic).save()
if(pic.validate())
println "no errors. New id: " + pic.id
else
println "with errors"
Ausgabe:
no errors. New id: null
Und bei Verwendung von Flush: wahr
def pic = new Picture(title:'XX', path:"XXX")
album.addToPictures(pic).save(flush:true)
if(pic.validate())
println "no errors. New id: " + pic.id
else
println "with errors"
Ausgabe:
no errors. New id: 17
Wie Sie sehen, gibt es keine Fehler beim Erstellen des Objekts, und ich sollte in der Lage sein, die zu erhaltenid
des Objekts nach nur dem Aufrufsave()
. Irgendwelche Ideen?
Vielen Dank