Merci pour vos réponse, le plugin que Fabien propose est pas mal, il
faudra que je le teste.
En fait, lorsque je fais des tests via la console Ruby tout marche
comme prévu, c’est à dire que si je fais :
p2 = Property.new
=> #<Property id: nil, type: “Property”, version_id: nil, name: nil,
value: nil, created_at: nil, updated_at: nil>
p3 = Property.new
=> #<Property id: nil, type: “Property”, version_id: nil, name: nil,
value: nil, created_at: nil, updated_at: nil>
v = Version.find :first
=> #<Version id: 1, num: 1, description: “des v1”, created_at:
“2009-05-06 16:10:50”, updated_at: “2009-05-06 16:10:50”>
p2.version = v
=> #<Version id: 1, num: 1, description: “des v1”, created_at:
“2009-05-06 16:10:50”, updated_at: “2009-05-06 16:10:50”>
p3.version = v
=> #<Version id: 1, num: 1, description: “des v1”, created_at:
“2009-05-06 16:10:50”, updated_at: “2009-05-06 16:10:50”>
p3.name = “req22”
=> “req22”
p2.name = “req22”
=> “req22”
p2.value = “r22”
=> “r22”
p3.value = “r33”
=> “r33”
p3.save and p2.save
=> false
v.properties
=> [#<Property id: 21, type: “Property”, version_id: 1, name: “req22”,
value: “r33”, created_at: “2009-05-07 20:36:53”, updated_at:
“2009-05-07 20:36:53”>]
Ici, on voit très bien que p2 n’est pas ajouté à la base de données.
Le problème avec mon application, c’est que la saisie se fait via un
formulaire généré à la volé (du javascript)
Je passe par de tas de partiels pour afficher ce formulaire…
Je me suis dis que ce peut être ActiveRecord insère les deux lignes en
une seule requête, mais lorsque j’ai consulté les logs j’ai trouvé que
ce n’est pas le cas. C’est atomique, voici un bout de log :
SQL (0.4ms) INSERT INTO “properties” (“name”, “updated_at”,
“version_id”, “value”, “created_at”) VALUES(E’req2’, ‘2009-05-06
18:23:49.090473’, 3, E’hgjhg’, ‘2009-05-06 18:23:49.090473’) RETURNING
“id”
SQL (0.4ms) INSERT INTO “properties” (“name”, “updated_at”,
“version_id”, “value”, “created_at”) VALUES(E’req2’, ‘2009-05-06
18:23:49.096753’, 3, E’lkj’, ‘2009-05-06 18:23:49.096753’) RETURNING
“id”
SQL (0.4ms) INSERT INTO “properties” (“name”, “updated_at”,
“version_id”, “value”, “created_at”) VALUES(E’req2’, ‘2009-05-06
18:23:49.098239’, 3, E’kjlkj’, ‘2009-05-06 18:23:49.098239’) RETURNING
“id”
SQL (0.4ms) INSERT INTO “properties” (“name”, “updated_at”,
“version_id”, “value”, “created_at”) VALUES(E’req2’, ‘2009-05-06
18:23:49.099697’, 3, E’sdfasdf’, ‘2009-05-06 18:23:49.099697’)
RETURNING “id”
cela ne vient pas du fait que j’utilise du javascript ?
On 7 mai 09, at 03:08, Fabien J. wrote:
property.rb
Le problème que j’ai est le suivant : lorsque j’insère via un
validates_uniqueness_of
niveau base de données sous forme de contrainte. C’est la seule
d’autres) pour postgresql, c’est en cours de discussion sur rails-
http://fabien.jakimowicz.com
–~–~---------~–~----~------------~-------~–~----~
Vous avez reçu ce message, car vous êtes abonné au groupe
“Railsfrance” de Google G…
Pour transmettre des messages à ce groupe, envoyez un e-mail Ã
l’adresse [email protected]
Pour résilier votre abonnement envoyez un e-mail à l’adresse [email protected]
-~----------~----~----~----~------~----~------~–~—
Meilleures salutations / Best Regards
Rachid ALAHYANE