Documenting this for posterity...

On Oct 23, 2013, at 5:20 PM, Walter Lee Davis wrote:

> I have a simple Rails 4 project with two scaffolded models: Practice and 
> Practitioner. I have set these both as habtm and am in the process of adding 
> checkboxes to the Practitioner form so that I can check off the practices 
> that this practitioner belongs to. In the practitioners_controller, I added 
> practice_ids to the practitioner_params permit list, but I am still getting 
> the error:
> 
> Started PATCH "/practitioners/1" for 127.0.0.1 at 2013-10-23 16:35:34 -0400
> Processing by PractitionersController#update as HTML
>  Parameters: {"utf8"=>"✓", 
> "authenticity_token"=>"u9XWBVshMKmLg+YhVFWu10PTQu+uvAbbvBck4QQG6wk=", 
> "practitioner"=>{"first_name"=>"Christine", "last_name"=>"Campbell", 
> "degree"=>"CRNP", "accepting_new_patients"=>"1", "specialty"=>"Obstetrics & 
> Gynecology", "secondary_specialty"=>"", "c_v"=>"Undergraduate Education: 
> 1988\r\nGraduate School Education: 1995\r\nAffiliations: Pottstown Memorial 
> Hospital", "practice_ids"=>[nil, "1"]}, "commit"=>"Update Practitioner", 
> "id"=>"1"}
>  Practitioner Load (0.2ms)  SELECT "practitioners".* FROM "practitioners" 
> WHERE "practitioners"."id" = ? ORDER BY "practitioners".last_name ASC, 
> "practitioners".first_name ASC LIMIT 1  [["id", "1"]]
> Unpermitted parameters: practice_ids
> 
> when I try to update. If I comment out the practitioner_params method, like 
> this:
> 
>    def practitioner_params
>      params.require(:practitioner).permit!#(:first_name, :last_name, :degree, 
> :accepting_new_patients, :specialty, :secondary_specialty, :c_v, 
> :practice_ids)
>    end
> 
> then the form works correctly (so it's not an HTML issue or anything basic 
> like that) -- I am able to set and unset the practice ids.
> 
> Can anyone suggest how I can keep the strong_parameters from Rails 4 but use 
> habtm like this?

When declaring an array-shaped value in the strong parameters method, you must 
hint at its format, like this

        :practice_ids => []

Once that's done, the whole thing Just Works™.

Can anyone point me to a definitive guide to the new strong parameters? I 
didn't see it in the Rails Guides anywhere.

Walter

> 
> Thanks,
> 
> Walter
> 
> -- 
> 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+unsubscr...@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/83F1116C-AC7E-433E-AC0D-41EB01136190%40wdstudio.com.
> For more options, visit https://groups.google.com/groups/opt_out.

-- 
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+unsubscr...@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/D13110FB-03AE-46E0-BC30-B5569F15FF65%40wdstudio.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to