Est-il possible de définir explicitement l'ID d'un objet de domaine dans Bootstrap.groovy de Grails (ou n'importe où, d'ailleurs)?Définition de l'ID de domaine Grails dans Bootstrap.groovy
J'ai essayé ce qui suit:
new Foo(id: 1234, name: "My Foo").save()
et:
def foo = new Foo()
foo.id = 1234
foo.name = "My Foo"
foo.save()
Mais dans les deux cas, quand j'imprimer les résultats de Foo.list()
lors de l'exécution, je vois que mon objet a été donné un identifiant de 1, ou quel que soit l'identifiant suivant de la séquence.
Edit: Ceci est en Grails 1.0.3, et quand je suis en mon application dans « dev » avec la base de données HSQL intégré.
Éditer: chanwit a fourni one good solution below. Cependant, je cherchais un moyen de définir l'identifiant sans changer la méthode de génération d'identifiant de mon domaine. Ceci est principalement pour tester: Je voudrais être en mesure de définir certaines choses à des valeurs id connues dans mon bootstrap de test ou setUp()
, mais toujours être en mesure d'utiliser auto_increment ou une séquence en production.