heroku postgres迁移错误(使用sqlite开发时没有发生)

时间:2015-05-20 23:48:48

标签: ruby-on-rails postgresql heroku

我正在尝试在heroku上运行一组迁移。 这是错误的开始。

rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

PG::UndefinedTable: ERROR:  relation "articles" does not exist
: ALTER TABLE "settings" ADD CONSTRAINT "fk_rails_679ac32a85"
FOREIGN KEY ("article_id")
  REFERENCES "articles" ("id")

有两次迁移。

第一个创建一个设置表,该表引用尚未创建的文章(下一次迁移应该生成此表)。第一次迁移看起来像这样:

class CreateSettings < ActiveRecord::Migration
  def change
    create_table :settings do |t|
      t.string :commentaryid
      t.string :logo
      t.text :title
      t.text :bannermessage
      t.boolean :blog
      t.string :default_ms_image
      t.string :dark_color
      t.string :light_color
      t.string :commentarydirname
      t.references :article, index: true
      t.timestamps null: false
    end
    add_foreign_key :settings, :articles
  end
end

然后应该在下一个迁移文件中创建articles表:

class CreateArticles < ActiveRecord::Migration
  def change
    create_table :articles do |t|
      t.string :article_name
      t.string :xml_file
      t.string :xslt_file
      t.references :setting, index: true
      t.timestamps null: false
    end
    add_foreign_key :articles, :settings
  end
end

我不明白的是,当我使用sqlite在我的开发机器上运行此迁移时,我没有遇到任何麻烦。

那是什么交易。

0 个答案:

没有答案