Как управлять отношением многие ко многим для вложенных полей в Ruby on Rails - PullRequest
0 голосов
/ 22 ноября 2018
class Resume < ActiveRecord::Base
  has_many :user_skills, :dependent => :destroy
  accepts_nested_attributes_for :user_skills, :allow_destroy => true, :reject_if => :all_blank 
end

class UserSkill < ActiveRecord::Base
  belongs_to :resume
  has_and_belongs_to_many :technologies
end

class Technology < ActiveRecord::Base
  has_and_belongs_to_many :user_skills
end


<%= nested_form_for([:student, @resume], validate: true, :html => { :multipart => true, class: "full-width" }) do |f| %>


 ------------------------------
      Resume fields
 ------------------------------      

 <h5>User Skills</h5>
<%= f.fields_for :user_skills do |us| %>

  <%= us.label :academic_years, "Academic Years" %>
  <%= us.text_field :academic_years %>

  <%= us.label :professional_years, "Professional Years" %>
  <%= us.text_field :professional_years %>

  <%= us.fields_for :technologies do |tech| %>

     <%= tech.collection_select :name, Technology.all, :id, :name, { prompt: "Select Technology"}, { :multiple => true, :size => 10} %> 

  <% end %>

   <%= us.link_to_remove "Remove", class: "btn btn-small red right" %>


Теперь я не знаю, как мне управлять этой записью в контроллере для создания и обновления, а также я не знаю, как я буду показывать эти записи .... Если вы понимаете,тогда моя проблема, пожалуйста, предоставьте мне код контроллера для обновления и создания контроллера резюме, а также помогите мне показать данные резюме.

1 Ответ

0 голосов
/ 22 ноября 2018

Я думаю, что вы используете старый камень nested_form от Ryan Bates.Вы должны использовать новейшие, например simple_form или другие из ruby-toolbox.com

...