PG::DuplicateColumn: ERROR: column "name" of relation "restaurants" already exists
: ALTER TABLE "restaurants" ADD COLUMN "name" character varying(255)/app/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.13/lib/active_record/connection_adapters/postgresql_adapter.rb:650:in `exec'
这是来自架构的表格
create_table "restaurants", :force => true do |t|
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "name"
t.string "picture"
t.string "address"
end
运行heroku run rake db:migrate
我看不到我有一个重复的列。我只是用heroku create
将它推送到heroku,在gem和gem lock文件中删除了sqlite3然后git push heroku master
。
我有一个pg gem,我应该在运行迁移之前配置数据库以在heroku上安装表吗?
答案 0 :(得分:0)
最明确的是,您有一个挂起的迁移,将此列“name”添加到“restaurants”表。在开发环境中运行rake db:migrate
时,您应该会看到此错误。
对于您的上一个问题,您的数据库已经配置,并且基于您已使用postgres的迁移。
希望这有帮助。
答案 1 :(得分:0)
检查link。如果这不起作用,我建议你在开发环境中rake db:reset
并检查rake db:migrate
是否也能正常工作。