我创建了两个模型并运行了迁移,尝试了对每个模型的一些工作,现在我想重新开始并以不同的方式处理它们。我是Rails的新手,并且从未尝试删除/删除数据库表(除了在我迁移它们之后立即回滚它们)。
谢谢!
答案 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)
在self.up中创建另一个迁移
drop_table :tablename
答案 2 :(得分:1)
如果您从未提交更改或部署应用程序,则只需删除模型文件并使用数据库控制台从数据库中删除表(假设它是sqlite3类型sqlite3
以进入shell控制台)或数据库管理GUI。
否则,您需要使用drop_table
迁移来反映生产系统上的更改。
答案 3 :(得分:0)