Rails 3 - 如何删除已创建的数据库表?

时间:2010-10-12 13:30:59

标签: ruby-on-rails database

我创建了两个模型并运行了迁移,尝试了对每个模型的一些工作,现在我想重新开始并以不同的方式处理它们。我是Rails的新手,并且从未尝试删除/删除数据库表(除了在我迁移它们之后立即回滚它们)。

谢谢!

4 个答案:

答案 0 :(得分:6)

要在迁移期间删除表格,您可以rails g migration DropUsers

class DropUsers < ActiveRecord::Migration
  def up
    drop_table :users
  end

  def down
    # recreate table logic here
  end
end

您也可以从Rails控制台中删除表

ActiveRecord::Migration.drop_table(:users)

仅供参考如果您想删除脚手架创建的代码,rails destroy scaffold User

答案 1 :(得分:5)

答案 2 :(得分:1)

如果您从未提交更改或部署应用程序,则只需删除模型文件并使用数据库控制台从数据库中删除表(假设它是sqlite3类型sqlite3以进入shell控制台)或数据库管理GUI。

否则,您需要使用drop_table迁移来反映生产系统上的更改。

答案 3 :(得分:0)

查看问题Rails - How to ReCreate the database

的最佳答案