class ActiveModel::MassAssignmentSecurity::Sanitizer
Public Class Methods
new(target=nil)
click to toggle source
# File lib/active_model/mass_assignment_security/sanitizer.rb, line 6 def initialize(target=nil) end
Public Instance Methods
sanitize(attributes, authorizer)
click to toggle source
Returns all attributes not denied by the authorizer.
# File lib/active_model/mass_assignment_security/sanitizer.rb, line 10 def sanitize(attributes, authorizer) sanitized_attributes = attributes.reject { |key, value| authorizer.deny?(key) } debug_protected_attribute_removal(attributes, sanitized_attributes) sanitized_attributes end
Protected Instance Methods
debug_protected_attribute_removal(attributes, sanitized_attributes)
click to toggle source
# File lib/active_model/mass_assignment_security/sanitizer.rb, line 18 def debug_protected_attribute_removal(attributes, sanitized_attributes) removed_keys = attributes.keys - sanitized_attributes.keys process_removed_attributes(removed_keys) if removed_keys.any? end
process_removed_attributes(attrs)
click to toggle source
# File lib/active_model/mass_assignment_security/sanitizer.rb, line 23 def process_removed_attributes(attrs) raise NotImplementedError, "#process_removed_attributes(attrs) suppose to be overwritten" end