3 回答
TA贡献2012条经验 获得超12个赞
Rails 4+方式(感谢Thomas在下面回答了此问题):
has_many :faixas_aliquotas, -> (object) {
where("regra_fiscal = ?", object.regra_fiscal)
},
:class_name => 'Fiscal::FaixaAliquota'
Rails 3.1+方式:
has_many :faixas_aliquotas, :class_name => 'Fiscal::FaixaAliquota',
:conditions => proc { "regra_fiscal = #{self.regra_fiscal}" }
Rails 3及以下:
has_many :faixas_aliquotas, :class_name => 'Fiscal::FaixaAliquota',
:conditions => ['regra_fiscal = #{self.regra_fiscal}']
不,这不是错误。条件用单引号引起来,仍然包含代码#{self.regra_fiscal}。当条件子句被撤消时,regra_fiscal方法将在的对象上调用self(无论该类是什么)。用双引号将不起作用。
我希望这是您要寻找的。
TA贡献1824条经验 获得超5个赞
Rails 4 +方式:
has_many :faixas_aliquotas, -> (object){ where("regra_fiscal = ?", object.regra_fiscal)}, :class_name => 'Fiscal::FaixaAliquota'
添加回答
举报