3 Stimmen

Einstellung der Grails-Domain-ID in Bootstrap.groovy

Ist es möglich, explizit die id eines Domain-Objekts in Grails' Bootstrap.groovy (oder irgendwo, für diese Angelegenheit) zu setzen?

Ich habe Folgendes ausprobiert:

new Foo(id: 1234, name: "My Foo").save()

und:

def foo = new Foo()
foo.id = 1234
foo.name = "My Foo"
foo.save()

Aber in beiden Fällen, wenn ich die Ergebnisse ausdrucke Foo.list() zur Laufzeit sehe ich, dass mein Objekt die ID 1 erhalten hat, oder was auch immer die nächste ID in der Sequenz ist.

Bearbeiten: Dies ist in Grails 1.0.3, und wenn ich meine Anwendung in "Dev" mit der eingebauten HSQL-Datenbank ausgeführt wird.

Bearbeiten: chanwit hat bereitgestellt eine gute Lösung unten . Allerdings war ich eigentlich auf der Suche nach einem Weg, um die id ohne Änderung meiner Domäne id Generation Methode festgelegt. Dies ist in erster Linie zum Testen: Ich würde gerne in der Lage sein, bestimmte Dinge auf bekannte id-Werte zu setzen, entweder in meinem Test-Bootstrap oder setUp() aber dennoch in der Lage sein, auto_increment oder eine Sequenz in der Produktion zu verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X