Celio Motta
2009-Apr-14 15:32 UTC
ActiveRecord::HasManyThroughCantAssociateThroughHasManyReflection
Hello, I tried the following and got that error and can''t figure out how to fix it... I know I can do a long way to add Turmas To a Disciplina but using like the following would be very convinient: p = Periodo.find(:first) d = p.disciplinas.find(13) d.turmas.create!(:codigo => ''23A'', :horario => ''2a e 4a - 15-17h'', :descricao => ''Turma Regular'') ActiveRecord::HasManyThroughCantAssociateThroughHasManyReflection: Cannot modify association ''Disciplina#turmas'' because the source reflection class ''Turma'' is associated to ''DisciplinaPeriodo'' via :has_many. My models are: class Periodo < ActiveRecord::Base has_many :disciplina_periodos, :dependent => :destroy has_many :disciplinas, :through => :disciplina_periodos validates_presence_of :periodo validates_uniqueness_of :periodo end class Disciplina < ActiveRecord::Base has_one :disciplina_periodo has_one :periodo, :through => :disciplina_periodo has_many :disciplina_periodos, :dependent => :destroy has_many :turmas, :through => :disciplina_periodos validates_presence_of :codigo, :nome validates_uniqueness_of :codigo validates_uniqueness_of :nome end class DisciplinaPeriodo < ActiveRecord::Base has_many :turmas, :dependent => :destroy belongs_to :periodo belongs_to :disciplina validates_presence_of :periodo_id, :disciplina_id validates_uniqueness_of :disciplina_id, :scope => :periodo_id validates_uniqueness_of :periodo_id, :scope => :disciplina_id end class Turma < ActiveRecord::Base belongs_to :disciplina_periodo belongs_to :disciplina validates_uniqueness_of :codigo, :scope => :disciplina_periodo_id end --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---