> Merci Michel & Guillaume pour vos réponses ! Après consultation des
> utilisateurs de l'appli, ta solution Guillaume leur suffit. Du coup c'est
> celle que j'ai retenue car c'est plus simple à implémenter.
>

Attention, il faut que tu rendes atomique (c'est à dire ininterruptible)
l'action "je relis pour vérifier que l'enregistrement n'a pas bougé puis je
savue une nouvelle version". Je crois que c'est le concept des transactions
[1] (je l'ai jamais mis en oeuvre mais j'y avais jeté un oeil pour un projet
perso).

Sinon tu risques le scénario suivant :
A lit l'enregistrement en version x
A édite l'enregistrement
B lit l'enregistrement en version x
B edite l'enregistrement
A vérifie l'enregistrement toujours en x => OK
B vérifie l'enregistrement toujours en x => OK
A sauve et passe en version x+1
B écrase la sauvegard de A et passe aussi en x+1

gUI

[1]
http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html

-- 
Pour la santé de votre ordinateur, préférez les logiciels libres.
Lire son mail : http://www.mozilla-europe.org/fr/products/thunderbird/
Browser le web : http://www.mozilla-europe.org/fr/products/firefox/
Suite bureautique : http://fr.openoffice.org/

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
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]

Répondre à