我有三个型号导轨 - 通过联想获得从的has_many =>名称作为字符串
class Mar < ActiveRecord::Base
belongs_to :baz
belongs_to :koo
end
class Baz < ActiveRecord::Base
has_many :other_mars, :class_name => "Mar", :foreign_key => :b
end
class Koo < ActiveRecord::Base
has_many :mars
has_many :bazs, :through => :mars, :source => :baz
end
并从模型巴兹我想获得的has_many的字符串名字。在这个例子中,它是“other_mars”
该解决方案必须适用于传递给它的class_name的任何类似的has_many关系。
我用Rails 3.2和Ruby 1.9
像这样的问题中的常见问题 - 你需要什么? – BroiSatse
我需要它作为搜索宝石的一部分。它通过关联很好地搜索has_many =>,但是一旦声明了一个与class_name不同的名称(比如这里的“other_mars”),它就会中断。如果我能够得到那个has_many的名字,生活对我来说会非常简单:D –
你的意思是......像ransack? – BroiSatse