从DB中删除列

时间:2014-03-03 17:46:12

标签: ruby-on-rails database postgresql ruby-on-rails-4

当我为附件的Rails模型创建一个列时,我使用了:

def self.up
  change_table :updates do |t|
    t.attachment :image
  end
end

def self.down
  drop_attached_file :updates, :image
end

我试图以这种方式删除列,但它说该关系不存在:

remove_column :updates, :image

如何从Updates表中正确删除此列???

更新 与:image

相关的列
t.string   "image_file_name"
t.string   "image_content_type"
t.integer  "image_file_size"
t.datetime "image_updated_at"

2 个答案:

答案 0 :(得分:1)

您可以随时删除这些内容:

change_table :updates do |t|
  t.remove :image_file_name
  t.remove :image_content_type
  t.remove :image_file_size
  t.remove :image_updated_at
end

答案 1 :(得分:0)

您也可以使用rake db:rollback撤消上一次rake db:migrate