ruby-on-rails - 缓存 friendly_id 插件

标签 ruby-on-rails seo friendly-id

Class Product < ActiveRecord::Base
  has_friendly_id :name, :use_slug => true
end

在“产品”表中存储 slug 的最有效方法是什么。 我有复杂的查找查询,与“slugs”表的连接给我带来了性能瓶颈。

最佳答案

好吧,我知道这是一个老问题,但只是想提醒一下,对于可能偶然发现这个问题的其他人:

问题中的代码片段来自 FriendlyId 3.x,在这种情况下,您可以在表格中添加一列(除了 slug 之外的任何名称...我更喜欢使用 cached_slug) 作为字符串并更新模型以显示

Class Product < ActiveRecord::Base
  has_friendly_id :name, :use_slug => true, :cache_column => 'cached_slug'
end

从 friendly_id 4.x 开始,您只需将 slug 列作为 string 添加到表中,并使用新语法:

例如:

Class Product < ActiveRecord::Base
  extend FriendlyId
  friendly_id :name, :use => :slugged
end

有很多选项和方法可以充分利用 friendly_id,包括历史记录(避免 404)等......

更多信息:http://rubydoc.info/github/norman/friendly_id/master/frames

关于ruby-on-rails - 缓存 friendly_id 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1347631/

相关文章:

ruby-on-rails - 通过 ruby​​ on Rails 中的回形针根据用户名的第一个字符添加缺失的图像

ruby-on-rails - 未定义方法 `synchronize' 对于 nil :NilClass

ruby-on-rails - 找不到没有 ID : Rails 4 custom controller action 的 [MODEL]

html - rel ="bookmark"链接属性是什么意思?

javascript - AngularJS SEO 使用 HTML5 模式 : Would love some clarity on how this functions behind-the-scenes

seo - 搜索引擎如何将结构化数据与页面内容进行交叉检查?

ruby-on-rails - 如何在 ruby​​ on rails 中使用友好 ID 从 URL 中删除模型名称

ruby-on-rails - ruby 中的 truncate 和 raw 是互斥的方法吗?

ruby-on-rails - NoMethodError at/users undefined method `email` for #<User :0x007f64aa0033c0>

jquery - 如何让 link_to_remote 与 jQuery 一起工作? Ajax未定义错误