2010-09-21 3 views
0

В настоящее время я использую Authlogic в веб-приложении для обработки аутентификации пользователей, но теперь решил создать ограниченный API, который, как представляется, требует использования single_access_token. Мой вопрос в том, как я могу применить миграцию к существующим пользователям?Обновление существующих пользователей с помощью Authlogic single_access_token

Я думал, используя что-то вроде

add_column :users, :single_access_token, :string 
User.reset_column_information 
User.find(:all) do |c| 
    c.update_attribute :single_access_token, ***** 
end 

Я не знаю, если это лучший способ, или что поставить на место *****, чтобы создать маркер для всех уже зарегистрированных пользователи.

Благодаря

ответ

3

Я думаю

User.all.each{ |x| x.reset_single_access_token! } 

является то, что вы ищете

+0

Спасибо за это! Я не был слишком далеко, но это именно то, что мне нужно. Приветствия. – wastedhours

0

Может быть быстрее, если у вас есть много пользователей:

User.find_each do |user| 

    tok = Authlogic::Random.friendly_token 

    str = "UPDATE users SET single_access_token = '#{tok}' WHERE id = #{user.id}" 

    ActiveRecord::Base.connection.update_sql(str) 

end 
Смежные вопросы