想知道是否有一种简单的方法来动态确定模型的关联是“has_one
”还是“has_many
”关系(即这是否是与一个对象或多个对象的关联)。
我正在使用MongoMapper,因此我可以通过以下方式检查类klass
是否具有与之相关联的一个或多个关系的关联模型assoc
klass.associations[:assoc].is_a? MongoMapper::Plugins::Associations::OneAssociation
klass.associations[:assoc].is_a? MongoMapper::Plugins::Associations::ManyAssociation
但这种方法似乎有些笨重,而且不通用(即无法适用于
ActiveRecord
关联)。我还希望避免加载任何对象,因此我相当确定instance.assoc.is_a? Array
也行不通。 有什么想法吗?
ActiveRecord
。 - MCB