Cómo debe ser el has_one asociado a un belongs_to :polymorphic
September 10th, 2009
Comments off
Cuando se tiene un belongs_to :polymorphic y se quiere poner un has_one en el modelo asociado, se debe hacer de la siguiente forma:
1 2 3 4 5 6 7 | class AtributoObjeto < ActiveRecord::Base belongs_to :asociado, :polymorphic => true, :dependent => :destroy end class Myfile < ActiveRecord::Base has_one :atributo_objeto, :as => :asociado, :dependent => :destroy end |
Es decir, si el belongs_to se llama :asociado, el has_one debe escribirse como “:as => :asociado” para que Rails sepa que en el otro lado tiene que buscar un campo “asociado_type” y un “asociado_id”, en lugar de un “atributo_objeto_id”
Categories: Ruby on Rails
Recent Comments