【问题标题】:Creating URL slugs for tags with acts-as-taggable-on using friendly_id使用 friendly_id 为具有可标记行为的标签创建 URL slug
【发布时间】:2012-04-30 09:05:03
【问题描述】:

我正在尝试遵循这个问题的答案,以便为标签创建 url 友好的 slug:

Creating url slugs for tags with acts_as_taggable_on

在初始化器中我有:

ActsAsTaggableOn::Tag.class_eval do
  extend FriendlyId
  friendly_id :name, use: :slugged
end

我得到的错误是:

undefined method `slug' for #<ActsAsTaggableOn::Tag id: nil, name: "test listing">

感谢您的帮助!

【问题讨论】:

  • 那篇文章使用的是旧的 gem,而您使用的是 FriendlyId 4.x,它需要您的 Tag 模型上的字符串类型为 slug 列。 ..我会尽快发布一些代码(目前正在上班)

标签: url ruby-on-rails-3.1 slug acts-as-taggable-on friendly-id


【解决方案1】:

使用我在参考帖子中读到的内容,我有一个潜在的解决方案

运行rails g migration AddSlugToTags slug:string

这应该会生成以下迁移:

class AddSlugToTags < ActiveRecord::Migration
  def change
    add_column :tags, :slug, :string
  end
end

当然,运行 rake db:migrate 进行设置。

那么你上面的初始化代码应该可以工作了。

注意:我自己没有尝试过,但它会起作用是有道理的。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2011-06-26
    • 2012-09-30
    • 2014-08-20
    • 1970-01-01
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    相关资源
    最近更新 更多