从 4.0.2 升级到 4.2.0 会中断 paper_trail 代码

Upgrading from 4.0.2 to 4.2.0 breaks paper_trail code

我在 4.2.0 中遇到以下错误,但在 4.0.2 中有效:

未定义方法“反转!” #

在下面的代码行中:

 def show
    @client     = Client.find(params[:id])
    @versions   = @client.versions.reverse!   <-- error line
  end

输入@client.versions.class 产生以下结果:

>> @client.versions.class
=> PaperTrail::Version::ActiveRecord_Associations_CollectionProxy
>>

有人知道吗?

谢谢。

您甚至不应该尝试使用破坏性的 reverse! 方法,该方法(如果有效)会改变正在调用的数组。值得庆幸的是,它已从基础 类 中删除。相反,您应该只使用 reverse,它仍然是 returns 一个反向数组,但不会改变它被调用的数组。