我使用的轨道5,我已经安装了宝石,并试图运行迁移,但我得到这个错误:Ruby on Rails:ratyrate gem表已经存在?
Index name 'index_rates_on_rater_id' on table 'rates' already exists
有谁知道为什么会存在?这是一个新的网站,刚刚开始添加设计宝石。
这是迁移文件,不会在执行完成rails db:migrate
class CreateRates < ActiveRecord::Migration[5.1]
def self.up
create_table :rates do |t|
t.belongs_to :rater
t.belongs_to :rateable, :polymorphic => true
t.float :stars, :null => false
t.string :dimension
t.timestamps
end
add_index :rates, :rater_id
add_index :rates, [:rateable_id, :rateable_type]
end
def self.down
drop_table :rates
end
end
如果您回滚并评论'add_index:rates,:rater_id' out并再次运行迁移,它是否有效? – Niklas
你的db/schema.rb文件是什么样子的? – ddonche