Я хочу иметь простое поле выбора, которое позволяет пользователям выбирать некоторых пользователей для работы в команде.
#jobs.rb
class Job < ApplicationRecord
has_many :team_members
end
#jobs_controller.rb
class JobsController < ApplicationController
def update
@job = Job.find(params[:id])
if @job.update_attributes(job_params)
flash[:notice] = "Job Saved"
redirect_to job_path(@job)
else
flash[:alert] = "Job Not Saved"
render :edit
end
end
private
def job_params
params.require(:job).permit(
team_member_ids: []
)
end
end
# jobs/edit.html.erb
<%= f.select :team_member_ids, User.all, {:include_blank => "None"},{ :multiple => true} %>
Это дает мне ошибку
Не удалось найти TeamMembers с идентификаторами 117, 23, 30.
Я что-то упустил здесь?Или это неправильный подход к управлению данными в форме?
Обновление, хэш параметров:
{"utf8"=>"✓",
"_method"=>"patch",
"authenticity_token"=>"xxxx",
"job"=>
{
"jobtype"=>"Cutting",
"status"=>"Not_Started",
"team_member_ids"=>["", "117", "23", "30"]},
"commit"=>"Update Job",
"id"=>"84"}