Module Merb::ParamsFilter::RequestMixin
In: merb-param-protection/lib/merb-param-protection.rb

Methods

Attributes

trashed_params  [RW] 

Public Instance methods

Removes specified parameters of an object

  remove_params_from_object(:post, [:status, :author_id])

[Source]

     # File merb-param-protection/lib/merb-param-protection.rb, line 133
133:         def remove_params_from_object(obj, attrs = [])
134:           unless params[obj].nil?
135:             filtered = params
136:             attrs.each {|a| filtered[obj].delete(a)}
137:             @params = filtered
138:           end
139:         end

Restricts parameters of an object

  restrict_params(:post, [:title, :body])

[Source]

     # File merb-param-protection/lib/merb-param-protection.rb, line 145
145:         def restrict_params(obj, attrs = [])
146:           # Make sure the params for the object exists
147:           unless params[obj].nil?
148:             attrs = attrs.collect {|a| a.to_s}
149:             trashed_params_keys = params[obj].keys - attrs
150: 
151:             # Store a hash of the key/value pairs we are going
152:             # to remove in case we need them later.  Lighthouse Bug # 105
153:             @trashed_params = {}
154:             trashed_params_keys.each do |key|
155:               @trashed_params.merge!({key => params[obj][key]})
156:             end
157: 
158:             remove_params_from_object(obj, trashed_params_keys)
159:           end
160:         end

[Validate]