1

Je suppose qu'il y a probablement un moyen plus facile de faire ce que je fais pour que le code soit moins lourd. J'ai eu du mal à comprendre comment utiliser la méthode revert_to ... je voulais quelque chose où je pourrais appeler deux versions différentes en même temps, mais cela ne semble pas être le cas pour vestal_versions.vestal_versions et htmldiff question de réversion

Ce code fonctionne, mais je me demande si je fais quelque chose de plus difficile que ce qu'il doit être et j'aimerais le savoir avant d'aller plus loin. Dans le cas où vous vous poseriez la question, j'utilise ceci en conjonction avec HTMLDIFF pour obtenir les changements de version.

<div id="content"> 
    <% if params[:versions] %> 
    <%= Article.diff(@content1, @content2) %> 
    <% else %> 
    <%= @article.content %> 
    <% end %> 
</div> 

Répondre

2

Je pense que vous êtes à la recherche de la méthode changes_between qui fournit vestal_versions.

@article = Article.find(params[:id]) 

if params[:versions] 
    v = params[:versions].split(',') 
    @article_changes = @article.changes_between(v.first.to_i, v.last.to_i) 
end 

alors @article_changes est un hachage des changements entre les versions. Quelque chose comme

{"content" => ["first version content", "second version content"]} 

Peut-être différent en fonction de ce que vous avez versionné.