2016-03-10 41 views
0

我正在開發接受按鈕,讓公司接受已申請特定工作的學生。學生可以申請一家公司所擁有的許多工作。我創建了accept型號,屬於student, company, and job型號。選擇框集合中的錯誤參數

所以,我想列出學生已經申請的所有工作,並在公司點擊接受按鈕時將其作爲job_id傳遞。在這裏,我有這部分的形式是:

<%= form_for([@student, @student.accepts.new]) do |f| %> 
    <%= f.hidden_field :student_id, value: @student.id %> 
    <%= f.collection_select(:job_id, @student.jobs, :id) %> 
    <%= f.submit 'Accept', class: 'btn btn-success' %> 
<% end %> 

,這裏是我想在控制檯才達到什麼:

> @student.accepts.new(student_id: 1, job_id: 1) 
=> #<Accept id: 1, student_id: 1, company_id: 1, job_id: 1, created_at: nil, updated_at: nil> 

目前部分形式會產生這樣的錯誤:

ArgumentError in Students#show

wrong number of arguments (3 for 4..6)

紅色突出顯示此代碼行:

<%= f.collectio n_select(:job_id,@ student.jobs,:id)%>

我的選擇一定有問題,但無法弄清楚它有什麼問題。

回答

0

我改變這行代碼:

<%= f.collection_select(:job_id, @student.jobs, :id) %> 

<%= f.collection_select(:job_id, @student.jobs, :id, :job_title) %> 

,現在它的工作。只是一個愚蠢的錯誤。