Method: DeviseController#build_resource
- Defined in:
- app/controllers/devise_controller.rb
#build_resource(hash = nil, options = {}) ⇒ Object (protected)
Build a devise resource. Assignment bypasses attribute protection when :unsafe option is passed
98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'app/controllers/devise_controller.rb', line 98 def build_resource(hash = nil, = {}) hash ||= resource_params || {} if [:unsafe] self.resource = resource_class.new.tap do |resource| hash.each do |key, value| setter = :"#{key}=" resource.send(setter, value) if resource.respond_to?(setter) end end else self.resource = resource_class.new(hash) end end |