validar validaciones rails polimorficas formulario asociaciones ruby-on-rails-3 associations model-associations

ruby on rails 3 - validaciones - Mismo modelo para dos belongs_to Asociaciones



validaciones rails (1)

Gracias a jamesw en RailsForum.com: el mismo modelo para dos belongs_to Associations se ha encontrado una solución.

class System < ActiveRecord::Base belongs_to :project_manager, :class_name => ''PointOfContact'', :foreign_key => ''project_manager_id'' belongs_to :technical_manager, :class_name => ''PointOfContact'', :foreign_key => ''technical_manager_id'' end class PointOfContact < ActiveRecord::Base has_many :project_managed_systems, :class_name => ''System'', :foreign_key => ''project_manager_id'' has_many :technical_managed_systems, :class_name => ''System'', :foreign_key => ''technical_manager_id'' end

Tengo un modelo PointOfContact que tiene PointOfContact Systems . Desde el lado de Systems , quiero identificar PointOfContact como technical_manager o project_manager (o ambos). Mientras que solo PointOfContact el PointOfContact 1 vez en el DB.

Mi intento sigue:

class System < ActiveRecord::Base belongs_to :project_manager, :class_name => ''PointOfContact'' belongs_to :technical_manager, :class_name => ''PointOfContact'' end class PointOfContact < ActiveRecord::Base has_many :systems end

Cuando ejecuto mis especificaciones (ejemplo a continuación) puedo crear correctamente las asociaciones de punto de contacto del System . Sin embargo, PointOfContact no tiene conocimiento de su asociación con System. ¿Porqué es eso?

@sys = System.create @tm = PointOfContact.create @pm = PointOfContact.create @sys.project_manager = @pm @sys.technical_manager = @tm @pm.systems.should have(1).items #> expected 1 items, got 0