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