2

如果已经讨论过这个问题的答案,请指出正确的方向。我已经搜索过这个问题,但在我的情况下我没有找到任何东西。

我创建了要删除的表。我已经删除了模型和迁移,但是当我尝试重新创建它们然后迁移时,我得到以下信息:

SQLite3::SQLException: table already exists, etc....

我尝试使用SQLite管理器手动删除它们,但我不确定数据库文件的位置(其他帖子在这里也没有帮助我)。顺便说一句,我在Win 7

我想知道这样做的正确方法。

4

3 回答 3

6

这是再次创建表和迁移的另一种最简单的方法。如果您使用的是 rails 3. 运行此命令以删除数据库并再次创建它。

rake db:drop # 删除数据库

rake db:create # 创建相同的数据库

rake db:migrate # 迁移数据。

于 2013-04-24T08:53:25.757 回答
4

您可以生成迁移

 rails generate migration DropProducts

并用它来放下桌子

class DropProducts < ActiveRecord::Migration
  def up
    drop_table :products    
  end
end
于 2013-04-23T22:12:18.443 回答
0

我写了一篇关于处理这种情况的博客文章,它可能会有所帮助......

http://www.fmhcc.com.au/ruby/database-migrations-in-rails-and-when-to-start-from-scratch/

于 2013-04-24T06:38:25.437 回答