2016-09-30 7 views
1

これはビューページです.---ここではメソッドのフィールドを使用しています。私はcheck_boxからJobPostingコントローラにデータを渡しています。チェックボックスのデータはJobAssignmentテーブルに保存する必要があります。は、fields_forを使用して、チェックボックスの値をrails4の他のテーブルに保存する必要があります。

コントローラで
<%- if @leads.present? -%> 
       <%= f.fields_for :assign do |x| %> 
       <%- @leads.each do |client| -%> 
       <% @requiter=UserRecruiter.where("reporting_to = ?", client.id)%> 
         <div class="col-md-3">     
         <table class="table table-bordered table-striped "> 
         <thead > 
          <tr class="bg-primary"> 
           <th> 
           <%= x.check_box :assign_to, {}, client.id %> 

          <%= "#{client.first_name} #{client.last_name}" %> 
           </th> 
          </tr> 
         </thead> 

         <tbody style="height:110px"> 

          <%- if @requiter.present? -%> 
          <%- @requiter.each do |req| -%> 
          <tr> 
           <td> 
           <%= "#{req.first_name} #{req.last_name}" %> 
           </td> 
           </tr> 
           <%end%> 
           <%end%> 
         </tbody>  
         </table> </div> 
         <%end%><%end%> 
         <%end%> 

---

def params_value 
     params.require(:job_posting).permit(:title, :description,:assign []) 
end 

def add_or_update_users 
    if params[:job_posting][:assign].present? && params[:job_posting]  [:assign][:assign_to].present? 
    assign = params[:job_posting][:assign][:assign_to] 
    assign.each do |x| 
     @job.job_assignment = JobAssignment.where({ job_posting_id:  @job.id, user_id: x }).first_or_create 
     @job.save 
    end 
    end 
end 

データは、私が間違っているのどこいずれかを教えtable.can JobAssignmentに保存されていません?

答えて

0

あなたはbuild

def new 
    @jobpos = JobPosting.new 
    @jobpos.jobassignment.build 
end 

を使用して置き換えることができます:assign:jobassignment

関連する問題