friendly_id 5.1.0 将历史记录与查找器结合使用

friendly_id 5.1.0 using history with finders

我第一次在 Rails 4.1.6 项目中使用 friendly_id gem,并尝试使用 findershistory, 和 sluggable 在一起,但 history 似乎不起作用。

我按照 railscast 教程进行设置,并将 finders 添加到我模型的 friendly_id 定义中:

extend FriendlyId
friendly_id :title, use: [:slugged, :finders, :history]
def should_generate_new_friendly_id?
    slug.blank? || title_changed?
end

以及添加来自 friendly_id.rb 初始化程序的方法,以允许在每次 title 属性更改时创建一个新的 slug

我已经将 slug 添加到数据库,迁移,运行 rails g friendly_id 并保存了每个模型以创建它们的 slug 和 friendly_id_slug,只是不确定为什么 history 不行!

我已经弄明白了,历史需要在模型中的发现者之前定义

friendly_id :title, use: [:slugged, :history, :finders]

现在一切正常:)