正确理解多态关联
Understanding polymorphic associations the right way
我曾尝试在应用程序中设置多态关联,但是当我对其进行测试时,我似乎只能通过一种方式检索我的关联:
class Event < ActiveRecord::Base
has_many :category_associations, :as => :categorized
end
class CategoryAssociation < ActiveRecord::Base
belongs_to :categorized, :polymorphic => true
end
现在,在控制台中,我创建了一些 CategoryAssociations(一个是 @ca )和一个事件( @e )。
然后我可以做
@ca.categorized = @e
@ca.save
我的问题是,如果我加载我的事件并尝试 @e.category_associations
,我得到一个空数组...但是当我尝试加载我的@ca 并执行 @ca.categorized
时,我得到我的活动 !!
多态关联只是一种方式吗?
或者我错过了什么?
感谢 tadman 的问题,尤其是让我检查 ruby 版本的问题,我不得不退出我的控制台并重新启动它。
我没有做任何其他事情,但我的协会现在是双向的!
我将尝试重现此问题,但现在,我的问题已解决...
我曾尝试在应用程序中设置多态关联,但是当我对其进行测试时,我似乎只能通过一种方式检索我的关联:
class Event < ActiveRecord::Base
has_many :category_associations, :as => :categorized
end
class CategoryAssociation < ActiveRecord::Base
belongs_to :categorized, :polymorphic => true
end
现在,在控制台中,我创建了一些 CategoryAssociations(一个是 @ca )和一个事件( @e )。 然后我可以做
@ca.categorized = @e
@ca.save
我的问题是,如果我加载我的事件并尝试 @e.category_associations
,我得到一个空数组...但是当我尝试加载我的@ca 并执行 @ca.categorized
时,我得到我的活动 !!
多态关联只是一种方式吗? 或者我错过了什么?
感谢 tadman 的问题,尤其是让我检查 ruby 版本的问题,我不得不退出我的控制台并重新启动它。 我没有做任何其他事情,但我的协会现在是双向的!
我将尝试重现此问题,但现在,我的问题已解决...