【问题标题】:Rake db:drop not clearing out my old tablesRake db:drop 不清除我的旧表
【发布时间】:2012-10-19 06:09:23
【问题描述】:

我的用户迁移过去是这样的:

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :login
      etc

现在看起来像这样:

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :username
      etc

那么,为什么我会看到这个?

rake db:drop
rake db:create
rake db:migrate
rails console
> User.new
+----+-------+------------------+---------------+-------------------+------------+------------+
| id | login | crypted_password | password_salt | persistence_token | created_at | updated_at |
+----+-------+------------------+---------------+-------------------+------------+------------+
|    |       |                  |               |                   |            |            |
+----+-------+------------------+---------------+-------------------+------------+------------+
1 row in set

我正在使用 PostgreSQL。

【问题讨论】:

  • 您是更改了现有迁移,还是添加了新迁移?
  • 您启发更改了迁移文件名中的数字,这迫使它重新加载。 Rails 一定一直在缓存迁移的内容。谢谢。

标签: ruby-on-rails postgresql rake rails-migrations


【解决方案1】:

增加用户迁移的文件名解决了这个问题。当我尝试更改其内容而不更改文件名时,我认为 Rails 正在缓存迁移的内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-06
    • 1970-01-01
    • 1970-01-01
    • 2013-05-27
    • 2012-06-14
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    相关资源
    最近更新 更多