Ruby on Rails - 从数据库中的Friendly_id slug中删除slug唯一性

时间:2016-08-22 12:45:20

标签: ruby-on-rails ruby ruby-on-rails-4 friendly-id

我在我的应用程序中使用Friendly_id gem。在我的Slide模型中,我不需要slug是唯一的,因为它永远不会重复(它是自动生成的)

如何从slug数据库中删除slides 唯一性

这就是我所拥有的:index_slides_on_slug_and_post_idslug:unique => true

1 个答案:

答案 0 :(得分:3)

如果要在rails迁移中执行此操作,则应该能够删除索引,然后在没有唯一约束的情况下将其添加回来。

与此类似的东西应该可以解决问题

class ChangeSlugIndex < ActiveRecord::Migration
  def change
    remove_index(:slides, name: 'index_slides_on_slug_and_post_id')
    add_index(:slides, [:slug,:post_id], name: 'index_slides_on_slug_and_post_id')
  end
end