2013-11-27 29 views
1

我試圖做一個版本的文件記錄列表,該用戶將能夠看到的版本之間的差異,並回到舊版本。文件線索版本

我已經找到了如何使上市並鏈接到這個版本,但由於某些原因,我得到一個錯誤,當我嘗試具體化的最後兩個版本。 它說:未定義的方法`reify'爲零:NilClass

有誰知道,該怎麼辦,差異版本呢?

# controller 
def edit 
@page = Page.find(params[:id]) 
@versions = @page.versions 
@page = @page.versions[params[:version].to_i].reify if params[:version] 
end 

# Model 
class Page < ActiveRecord::Base 
validates :title, :presence => true 
belongs_to :category 
has_paper_trail 
end 

# View 
<% @versions.each do |version| %> 
<ul> 
<li><%= version.id %> <%= link_to "Previous version", {:version => (version) }%></li> 
</ul> 
<% end %> 
<%= link_to "Go to current version"%> 

謝謝您的幫助

回答

1

貌似問題是,你正在試圖調用@page.versions[params[:version].to_i]與您的版本對象的ID,但@ page.versions僅是一個集合,並期望無關的指數該版本對象的ID。

這些解決方案中任選其一:

Version.find(params[:version]) 

或者

@page.versions.find(params[:version])