【发布时间】:2015-07-21 10:01:56
【问题描述】:
我正在将一个非常旧的应用从 friendly_id 3.2 迁移到 5.1。
我有一个用户模型,目前有一个cached_slug 字段。我创建了一个名为 slug 的新字段。最初,我认为我可以将数据从 cached_slug 复制到 slug,但我注意到还有一个名为 slugs 的完整其他表,如下所示:
create_table "slugs", force: :cascade do |t|
t.string "name", limit: 255
t.integer "sluggable_id"
t.integer "sequence", default: 1, null: false
t.string "sluggable_type", limit: 40
t.string "scope", limit: 255
t.datetime "created_at"
end
按照 Rails 快速入门的 FriendlyID README 中的说明,我运行了 rails generate friendly_id,它创建了这个表:
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"
end
所以现在我很困惑我需要做什么才能完成迁移。我尝试使用控制台创建一个新用户,但 friendly_id_slugs 表仍然是空的,所以我不确定它的用途或用途。
我有两个问题: 1)这个其他表是做什么用的 2) 我需要做什么才能将旧的 slug 迁移到新的表/字段,以便它继续向前工作?
谢谢!
【问题讨论】:
标签: ruby-on-rails ruby friendly-id