Я пытаюсь обновить вложенную ассоциацию, в которой есть 2 родителя, от одного до многихКак обновить вложенные атрибуты через контроллер из простой формы?
Компания имеет много компаний, и у пользователей также есть много компаний-пользователей.
company_users оба принадлежат компании и пользователи
это моя текущая форма
<%= simple_form_for([:admin, @company_user], url: @company_user.new_record? ? admin_company_users_path : admin_company_user_path) do |f| %>
<div class="row-fluid">
<div class="span4 columns">
<%= render partial: "admin/layouts/form_errors", locals: {instance: @company_user} %>
<div class="actions">
<%= f.simple_fields_for(@company) do |p| %>
<%= p.input :name %>
<% end %>
<%= f.simple_fields_for(@user) do |s| %>
<%= s.input :full_name %>
<% end %>
<%= f.input :role %>
<%= f.submit class: "submit" %>
</div>
</div>
<% end %>
поля корректно отображать полное имя и фамилию, но когда я нажал на кнопку обновления, ничего не происходит
вот мой контроллер
module Admin
class CompanyUsersController < BaseController
before_action :load_company_user, only: [:edit, :update, :destroy]
respond_to :html
def index
@company_users = CompanyUser.includes(:user, :company).page(params[:page])
end
def edit
end
def update
flash[:notice] = 'Company User was successfully updated.' if @company_user.update(permitted_params)
respond_with @company_user, location: admin_company_users_url
end
def destroy
@company_user.destroy
respond_with @company_user, location: admin_company_users_url
end
def load_company_user
@company_user = CompanyUser.find(params[:id])
@company = @company_user.company
@user = @company_user.user
end
def permitted_params
params.require(:company_user).permit(:role, pets_attributes: [:full_name,:name])
end
end
end
я пробовал вызывать разрешенный метод как для объектов экземпляра компании, так и для пользователей, но они жалуются на незнание роли param
Было ли мое решение работать? – Pavan