Giving users the ability to reshare content

I found one solution that stores the reposted data within a content
field on the model, but of course that's not a good approach. If I can
use only the object's ID, I think that would slim down the amount of
data being used. The old method is below, maybe you have a better
solution with AJAX.

Post model
has_many: reposts, class_name: "Post", foreign_key: "repost_id",
dependent: :destroy;

def repost
    orig_post=Micropost.find(params[:id]);
    if(orig_post)
      Micropost.create(user_id:current_user.id,
        content: orig_post.content,
        repost_id:orig_post.id);
      respond_to do |format|
        format.js
      end
    end
  end