瑞安·贝茨(Ryan Bates)的Railscast插曲之后,我的工作情况还不错,然后几周后,我又去检查了一下,感觉很烂。现在,每当我按下撤消按钮时,都会出现此错误:

未初始化的常量VersionsController :: Version

我将其设置与截屏视频中的设置完全相同,但是我不知道可能是什么原因造成的。

问题显然在第3行:

class VersionsController < ApplicationController
  def revert
    @version = Version.find(params[:id])
    @version.reify.save!
    redirect_to :back, :notice => "Undid #{@version.event}"
  end
end


有什么建议?

http://railscasts.com/episodes/255-undo-with-paper-trail

最佳答案

Papertrail的最新版本实际上将Version类的名称空间命名为PaperTrail :: Version。这将立即解决问题。

这是一个例子:

def revert
  @version = PaperTrail::Version.find(params[:id])
  if @version.reify
    @version.reify.save!
  else
    @version.item.destroy
  end
end

关于ruby-on-rails - Paper_trail gem:未初始化的常量VersionsController::Version,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20046317/

10-16 00:29