ruby on rails - Using partial with paper trail -
i'm trying put code in partial show page in /events. code works fine when use in show page, when extract partial i'm getting no method error
undefined method `event' #<activerecord::associations::collectionproxy::activerecord_associations_collectionproxy_papertrail_version:0x007f4368823a68> versions/_version.html.erb
<% cache version %> <div class="feed-item"> <h4> <%= link_to version.item.name, version.item %> <small> <%= version.event + "d" %> <%= link_to user.find(version.whodunnit).username, user.find(version.whodunnit) %> </small> </h4> <ul class="list-unstyled"> <% version.changeset.each |data| %> <li> <strong><%= data[0].capitalize %>:</strong> <% if data[1][0].present? %><p class="red">- <%= data[1][0] %></p><% end %> <p class="green">+ <%= data[1][1] %></p> </li> <% end %> </ul> </div> <% end %> show.html.erb
<%= render :partial => '/versions/version', :object => @versions %> events controller
def show @versions = @event.versions end events model
has_paper_trail any idea how put code in partial instead of having inside show view? thanks.
edit: still no method error
undefined method `item' #<activerecord::associations::collectionproxy::activerecord_associations_collectionproxy_papertrail_version:0x007f43688ee1a0> events_controller.rb
before_action :set_event, only: [:show, :update, :destroy] def set_event @event = event.find(params[:id]) end
do have defined @eventvariable in eventscontroller? @event.versions method has called on actual event object.
for example
def show @event = event.find(1) @versions = @event.versions end
Comments
Post a Comment