2013-03-18 20 views
13

Ho due modelli, Reclamo e Azienda. Reclamo belongs_to e accepts_nested_attributes per Società e Società has_many Reclami.Attributi nidificati per rotaie di appartenenze_di associazione

# Models 

class Complaint < ActiveRecord::Base 
    attr_accessible :complaint, :date, :resolved 

    belongs_to :user, :class_name => 'User', :foreign_key => 'id' 
    belongs_to :company, :class_name => 'Company', :foreign_key => 'id' 
    has_many :replies 

    accepts_nested_attributes_for :company 

end 

class Company < ActiveRecord::Base 
    attr_accessible :name 

    has_many :complaints, :class_name => 'Complaint', :foreign_key => 'id' 
    has_many :branches, :class_name => 'Branch', :foreign_key => 'id' 
    belongs_to :industry 

end 

Nel controller denuncia cerco costruire una società nel nuovo metodo.

# Complaint Controller 

class ComplaintsController < ApplicationController 
... 
def new 
    @complaint = Complaint.new 
    @complaint.build_company 

    respond_to do |format| 
     format.html # new.html.erb 
     format.json { render json: @complaint } 
    end 
    end 
... 
end 

Nel modulo ho aggiunto un campo per l'aggiunta di un attributo nome alla Società.

Il modulo invia, ma viene salvato solo il reclamo. L'input dell'utente per la società viene ignorato. Perché questo non creerà una nuova società?

+0

Hi @pjmil, sto affrontando lo stesso problem.will per favore mi dica forte parametro di protesta controller? –

+0

Ciao, sto affrontando lo stesso problema. Come l'hai aggiustato – aashish

risposta

17

Il mio errore era nel modulo. Ho perso l'f. prima della fields_for :company

<%= f.fields_for :company do |company| %>