smtlaissezfaire / acts_as_tokenizable

This URL has Read+Write access

smt (author)
Fri Jan 11 10:39:48 -0800 2008
commit  fc3c23643dbb15c051555630918b5682a483540d
tree    55cc35c2a534cf6efc90f219ecf74bb1b91ec8cc
parent  eea8bfee475564f931f827d25c125e64edf2dfc3
name age message
file README Loading commit data...
file init.rb
directory lib/
directory spec/
README
ActsAsTokenizable
=================

Add a column named 'token' to your model, as a string:

class AddTokenStringColumnToUsers < ActiveRecord::Migration
  def self.up
    add_column :users, :token, :string
  end

  def self.down
    remove_column :users, :token
  end
end

Then open up your class, and add the following:

class User < ActiveRecord::Base
  acts_as_tokenizable
end

Now when a user gets created, he will have a unique 16 character token:

user = User.create!
user.token # => "3737edeca0f85e76" 

By default, the token will only be updated once - on the first save.  If you would like the token
to change after every save, you may specify that like so:

class User < ActiveRecord::Base
  acts_as_tokenizable :update_token => false
end