投稿のリビジョンのリストを集めるのに助けが必要です。ユーザーは、元の投稿であろうと、投稿の後続のリビジョンであろうと、この同じリストを表示できる必要があります。現在の投稿がリビジョンの場合、外部キー (revision_id) を使用して他のリビジョンをプルする必要があることはわかっていますが、その方法はわかりません。
また、これを行うためのより良い方法があれば、提案をお待ちしています。
post.rb
class Post < ActiveRecord::Base
#...
has_many :revisions, class_name: "Post", foreign_key: "revision_id"
#...
end
posts_controller.rb
class PostsController < ApplicationController
def show
@post = Post.find(params[:id])
if @post.revision_id = nil
@original = @post
else
@original = @post.revision_id
end
@revisions = @original.revisions.all
#...
end
end