PG :: UndefinedTable:错误:关系“----”不存在

时间:2016-08-22 17:42:52

标签: ruby-on-rails postgresql

我正在使用SQlite用于开发环境,而Postgre用于生产。

在开发过程中一切都很顺利。但是当我尝试重置并迁移生产数据库时,我收到以下消息:

PG::UndefinedTable: ERROR:  relation "priceranges" does not exist
...
FOREIGN KEY ("pricerange_id")
REFERENCES "priceranges" ("id")

我的场地模型:

belongs_to :pricerange, :class_name => "PriceRange" 

我的价格范围迁移:

class CreatePriceRanges< ActiveRecord::Migration[5.0]
  def change
   create_table :price_ranges do |t|
    t.string :price_description
    t.timestamps
   end
  end
end

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您在迁移中创建的表格名称为price_ranges,而不是priceranges。除非您覆盖PriceRange模型中的表名,否则pricerange上的Venue关联将查找名为price_range_id的外键,而不是pricerange_id。我建议坚持使用惯例,并建立联系:

belongs_to :price_range # automatically uses class PriceRange, and foreign key `price_range_id`