Rake Migration:如何为所有用户输入auth_token到迁移中

时间:2011-07-26 01:13:28

标签: ruby-on-rails migration

我最近向我的用户添加了一个名为auth_token的新列,假设在创建新用户时生成该列。

如何通过迁移向现有用户添加auth_token? 资料来源:http://railscasts.com/episodes/274-remember-me-reset-password

PS。我在http://guides.rubyonrails.org/migrations.html找不到这个,所以请不要发送给我。

1 个答案:

答案 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加载到迁移的内存空间。