コードが扱いにくくならないように、私がやっていることをもっと簡単に行う方法があると思います。
revert_to メソッドの使用方法を理解するのに苦労しました... 2 つの異なるバージョンを同時に呼び出せるものが欲しかったのですが、vestal_versions が機能する方法ではないようです。
このコードは機能しますが、必要以上に難しいものを作っているのではないかと考えており、深く掘り下げる前に調べたいと思います。
@article = Article.find(params[:id])
if params[:versions]
v = params[:versions].split(',')
@article.revert_to(v.first.to_i)
@content1 = @article.content
@article.revert_to(v.last.to_i)
@content2 = @article.content
end
ご参考までに、これを HTMLDIFF と組み合わせて使用して、バージョンの変更を取得しています。
<div id="content">
<% if params[:versions] %>
<%= Article.diff(@content1, @content2) %>
<% else %>
<%= @article.content %>
<% end %>
</div>