2012-10-21 4 views
0

Je veux savoir comment intégrer le versionnage de documents dans une application web ruby ​​on rails?Comment intégrer le versionnage de documents dans une application Web?

Imaginons que je crée un post et que je l'enregistre dans ma base de données. Maintenant, il y a un autre utilisateur et change cet article. Et maintenant je vais fournir à l'utilisateur les différences entre ces messages. Comme dans Github quand un nouveau commit a été poussé vers le dépôt.

Peut-être qu'il est possible d'utiliser git à cette fin? Ou quelle est une bonne approche pour enregistrer différentes versions d'un article sans enregistrer l'intégralité du message x fois.

Merci.

Répondre

3

On dirait que vous êtes à la recherche d'une "bibliothèque d'audit", qui a la particularité:

Only save the change and info about the change

un tel bijou est paper_trail.

Vous pouvez jeter un oeil à ce des rails moulés pour l'installation:

http://railscasts.com/episodes/255-undo-with-paper-trail

Vous pouvez essayer le code:

class Posts< ActiveRecord::Base 

has_paper_trail 

end 

Et puis utilisez:

post.versions 

à accéder à la liste des modifications.

+0

C'est exactement ce que je cherchais. Merci beaucoup! :) – sn3ek

Questions connexes