我最近向我的用户添加了一个名为auth_token
的新列,假设在创建新用户时生成该列。
如何通过迁移向现有用户添加auth_token
?
资料来源:http://railscasts.com/episodes/274-remember-me-reset-password
PS。我在http://guides.rubyonrails.org/migrations.html找不到这个,所以请不要发送给我。
答案 0 :(得分:2)
class DoThisThing < ActiveRecord:: Migration
def self.up
@users = Users.all
@users.each do |user|
user.auth_token = generate_token
user.save
end
end
def self.down
puts "non recoverable migration"
end
def generate_token
123456789
end
end
您可以将任何标准的Ruby / Rails代码放入迁移中。请注意stdin / out以及是否需要将任何特定的lib加载到迁移的内存空间。