I recommend you visit Ryan Bates site RailsCasts.com and watch
episodes 196 and 197.
You should go ahead and subscribe, so he will keep doing stuff like
this.

Cheers!
SC

On Feb 16, 11:37 am, emc_lab <[email protected]> wrote:
> A user has many user_levels and a user_level belongs to a user. We are
> having difficulty updating the user_level. Here is the code for
> user_level  update:
>
>     <%= simple_form_for @user do |f| %>
>       <% @user.user_levels.each do |level| %>
>         <%= f.fields_for :user_levels, level, :index => level do |
> builder| %>
>           <p><%= render :partial => 'user_levels', :locals => {:f =>
> builder, :i_id => level.position} %></p>
>         <% end %>
>       <% end %>
>     <% end %>
>
> The code above will display the current user_level with selected set
> to the current position. But the update was not saved for user_level.
>
> Here is the user_levels partial
>
>     <div class="fields">
>       <%= f.input :position, :collection => return_position, :prompt
> => "Choose position",
>                           :label => false, :include_blank =>
> true, :selected => i_id %>
>       <%= link_to_remove_fields "remove", f %>
>     </div>
>
> Here is the string posted to the server for params[:user]. There are
> currently two positions for the user and one gets deleted as update:
>
>     {"name"=>"test eng", "login"=>"tester12", "password"=>"password",
> "password_confirmation"=>"password", "user_type"=>"employee",
> "user_levels_attributes"=>{"0"=>{"id"=>"5"},
> "1"=>{"position"=>"elec_eng", "_destroy"=>"false", "id"=>"6"}}}
>
> The app has no problem creating a new user with multiple user_levels.
>
> Any solution for child update? Thanks so much

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to