Richard Peck 是正确的,您必须添加slug
字段。
但是很多人感到困惑,因为 FriendlyID 生成的friendly_id_slugs
表包含 sluggable_id 和 sluggable_type 字段。
create_table "friendly_id_slugs", force: :cascade do |t|
t.string "slug", null: false
t.integer "sluggable_id", null: false
t.string "sluggable_type", limit: 50
t.string "scope"
t.datetime "created_at"
t.index ["slug", "sluggable_type", "scope"], name: "index_friendly_id_slugs_on_slug_and_sluggable_type_and_scope", unique: true
t.index ["slug", "sluggable_type"], name: "index_friendly_id_slugs_on_slug_and_sluggable_type"
t.index ["sluggable_id"], name: "index_friendly_id_slugs_on_sluggable_id"
t.index ["sluggable_type"], name: "index_friendly_id_slugs_on_sluggable_type"
end
基本上它为历史模块生成friendly_id_slugs 表。看看他们关于History__Avoiding_404_s_When_Slugs_Change的文档:http : //norman.github.io/friendly_id/file.Guide.html#History__Avoiding_404_s_When_Slugs_Change