Ruby on rails 3 如何在初始创建表之后添加要设计的列?
我安装了Desive,翻了翻,后来才意识到,我想加上一句:confirmatible 我是否可以返回到相同的初始迁移,只需取消注释我想要的helper,然后再次rake db:migrate 我试过了,但似乎不起作用。但我还没有看到如何创建后续迁移的示例 谢谢 这就是我所尝试的:Ruby on rails 3 如何在初始创建表之后添加要设计的列?,ruby-on-rails-3,devise,Ruby On Rails 3,Devise,我安装了Desive,翻了翻,后来才意识到,我想加上一句:confirmatible 我是否可以返回到相同的初始迁移,只需取消注释我想要的helper,然后再次rake db:migrate 我试过了,但似乎不起作用。但我还没有看到如何创建后续迁移的示例 谢谢 这就是我所尝试的: 1 class AddConfirmableToUsers < ActiveRecord::Migration 2 def self.up 3 change_table :users
1 class AddConfirmableToUsers < ActiveRecord::Migration
2 def self.up
3 change_table :users do |t|
4 t.confirmable
5 end
6 add_index :users, :confirmation_token, :unique => true
7 end
8
9 def self.down
10 remove_column :users, :confirmation_token
11 end
12
13 end
1类AddConfirmableToUserstrue
7结束
8.
9 def自动关闭
10删除列:用户,:确认\u令牌
11完
12
13完
您的迁移应该可以正常工作。您是否检查了用户
型号以确保启用了:confirmable
?默认情况下,它被注释掉了
如果你不介意丢失数据,你可以这样做
> rake db:drop
否则,您可以编辑初始迁移并执行回滚
# get the current migration version
> rake db:version
> Current version: ****************41
> rake db:rollback ****************40
做些改变
> rake db:migrate
您可以自己添加适当的列,如下所示:
class AddConfirmableToUsers < ActiveRecord::Migration
def self.up
change_table :users do |t|
t.string :confirmation_token
t.datetime :confirmed_at
t.datetime :confirmation_sent_at
end
add_index :users, :confirmation_token, :unique => true
end
def self.down
change_table :users do |t|
t.remove :confirmation_token, :confirmed_at, :confirmation_sent_at
end
remove_index :users, :confirmation_token
end
end
class AddConfirmableToUserstrue
结束
def自动关闭
更改表格:用户不更改|
t、 删除:确认\u令牌,:确认\u在,:确认\u发送\u在
结束
删除索引:用户,:确认\u令牌
结束
结束
好的,我不知道该怎么做,但我想这就是我要找的……我使用了如上所述的帮助程序,是否也可以?我认为使用帮助程序会起作用,但我从未真正尝试过。