Ruby on Rails
Tuesday, January 26, 2016
On Tuesday, January 26, 2016 at 8:21:21 PM UTC, Ruby-Forum.com User wrote:
Hi everyone. I'm new in ruby and recently faced with mass assignment
problem. Below I attached a sample code similar to mine. Could you
explain me what should I use in require method??? is it a name of
model(person) or a variable name which I assign result(person =
current_account.people.find(params[:id])) or maybe it should be an
object attribute like @person??? Because I used various types but always
have the same error.
it is the name of a key in the params hash (check your development.log to see what params you are receiving). In your example below you are checking that the params hash contains a key "person" (an error will be raised if not) and that value is a hash where the keys name and age are permitted. If you use the standard rails methods for building your form (i.e. form_for and f.text_field etc rather than text_field_tag) then rails uses the name of the model class so the argument to require will also be the name of the class
The second question - is it necessary to give the same name for private
method def person_params as the name of (person_params) for db update?
not quite sure what you mean by that.
Fred
class PeopleController < ActionController::Base
def update
person = current_account.people.find(params[:id])
person.update_attributes!(person_params)
redirect_to person
end
private
def person_params
params.require(:person).permit(:name, :age)
end
end
--
Posted via http://www.ruby-forum.com/.
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/103e8c11-07a4-481a-a7f7-aea9ff6d890c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment