mirror of
https://github.com/heartcombo/devise.git
synced 2022-11-09 12:18:31 -05:00
Moving Devise method to Devise::ActiveRecord and updating TODO
This commit is contained in:
parent
1ac4cab473
commit
984cf8ee20
5 changed files with 36 additions and 33 deletions
7
TODO
7
TODO
|
@ -1,7 +1,3 @@
|
|||
* SessionsController
|
||||
* PasswordsController
|
||||
* ConfirmationsController
|
||||
|
||||
* Add mappings
|
||||
|
||||
Devise.map :users, :to => User, :for => [:authenticable, :recoverable, :confirmable], :as => :usuario
|
||||
|
@ -35,3 +31,6 @@
|
|||
* Devise::Recoverable
|
||||
* Devise::Validatable
|
||||
|
||||
* SessionsController
|
||||
* PasswordsController
|
||||
* ConfirmationsController
|
||||
|
|
|
@ -16,29 +16,8 @@ require 'devise/initializers/warden'
|
|||
|
||||
module Devise
|
||||
|
||||
# Shortcut method for including all devise modules inside your User class
|
||||
# Examples:
|
||||
# # include only authenticable module (default)
|
||||
# acts_as_devisable
|
||||
# # include authenticable + confirmable modules
|
||||
# acts_as_devisable :confirmable
|
||||
# # include authenticable + recoverable modules
|
||||
# acts_as_devisable :recoverable
|
||||
# # include authenticable + validatable modules
|
||||
# acts_as_devisable :validatable
|
||||
# # include all modules
|
||||
# acts_as_devisable :confirmable, :recoverable, :validatable
|
||||
# # shortcut to include all modules (same as above)
|
||||
# acts_as_devisable :all
|
||||
#
|
||||
def acts_as_devisable(*options)
|
||||
include Devise::Models::Authenticable
|
||||
include Devise::Models::Confirmable if [:all, :confirmable].any?{|o| options.include?(o) }
|
||||
include Devise::Models::Recoverable if [:all, :recoverable].any?{|o| options.include?(o) }
|
||||
include Devise::Models::Validatable if [:all, :validatable].any?{|o| options.include?(o) }
|
||||
end
|
||||
end
|
||||
|
||||
ActionView::Base.send :include, DeviseHelper
|
||||
ActionController::Base.send :include, Devise::Controllers::Authenticable
|
||||
ActiveRecord::Base.send :extend, Devise
|
||||
ActiveRecord::Base.send :extend, Devise::ActiveRecord
|
||||
|
|
25
lib/devise/active_record.rb
Normal file
25
lib/devise/active_record.rb
Normal file
|
@ -0,0 +1,25 @@
|
|||
module Devise
|
||||
module ActiveRecord
|
||||
# Shortcut method for including all devise modules inside your User class
|
||||
# Examples:
|
||||
# # include only authenticable module (default)
|
||||
# devise
|
||||
# # include authenticable + confirmable modules
|
||||
# devise :confirmable
|
||||
# # include authenticable + recoverable modules
|
||||
# devise :recoverable
|
||||
# # include authenticable + validatable modules
|
||||
# devise :validatable
|
||||
# # include all modules
|
||||
# devise :confirmable, :recoverable, :validatable
|
||||
# # shortcut to include all modules (same as above)
|
||||
# devise :all
|
||||
#
|
||||
def devise(*options)
|
||||
include Devise::Models::Authenticable
|
||||
include Devise::Models::Confirmable if [:all, :confirmable].any?{|o| options.include?(o) }
|
||||
include Devise::Models::Recoverable if [:all, :recoverable].any?{|o| options.include?(o) }
|
||||
include Devise::Models::Validatable if [:all, :validatable].any?{|o| options.include?(o) }
|
||||
end
|
||||
end
|
||||
end
|
|
@ -1,26 +1,26 @@
|
|||
require 'test_helper'
|
||||
|
||||
class Authenticable < ActiveRecord::Base
|
||||
acts_as_devisable
|
||||
devise
|
||||
end
|
||||
|
||||
class Confirmable < ActiveRecord::Base
|
||||
acts_as_devisable :confirmable
|
||||
devise :confirmable
|
||||
end
|
||||
|
||||
class Recoverable < ActiveRecord::Base
|
||||
acts_as_devisable :recoverable
|
||||
devise :recoverable
|
||||
end
|
||||
|
||||
class Validatable < ActiveRecord::Base
|
||||
acts_as_devisable :validatable
|
||||
devise :validatable
|
||||
end
|
||||
|
||||
class Devisable < ActiveRecord::Base
|
||||
acts_as_devisable :all
|
||||
devise :all
|
||||
end
|
||||
|
||||
class DeviseTest < ActiveSupport::TestCase
|
||||
class DeviseActiveRecordTest < ActiveSupport::TestCase
|
||||
|
||||
def include_authenticable_module?(mod)
|
||||
mod.included_modules.include?(Devise::Models::Authenticable)
|
|
@ -1,3 +1,3 @@
|
|||
class User < ActiveRecord::Base
|
||||
acts_as_devisable :all
|
||||
devise :all
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue