Hello. I need an advice to find a solution on creating a new has_many :through association on a existing model. I have:
Company has_many :managements, :dependent => :destroy has_many :managers, :through => :managements Manager has_many :managements, :dependent => :destroy has_many :companies, :through => :managements With the command link_to "Add manager", new_company_manager_url(@company), :class => "btn", :remote => true I display the manager form, create a new manager associated to the company and create a new management. In manager controller: def create @company = Company.find(params[:company_id]) @manager = Manager.new(params[:manager]) add_management @manager.save respond_with @manager end private def add_management profile = params[:manager][:profile] profile.delete_if { |v| v.empty? } profile.each do |prof| @manager.managements.build(:profile => prof, :company => @company) end end If the manager exists I only need to create a new management, so in the manager new action I've put: def new @company = Company.find(params[:company_id]) @manager = Manager.find_or_initialize_by_fiscal_code(params[:fiscal_code]) respond_with(@manager) end If the manager does not exists I create a new one and a new management like showed before. But, if the manager exists the form action is to update manager. I'm searching for a solution to only create a new management without updating manager. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.