Rails 4+ way (Спасибо Томасу, который ответил на это ниже):
has_many :faixas_aliquotas, -> (object) {
where("regra_fiscal = ?", object.regra_fiscal)
},
:class_name => 'Fiscal::FaixaAliquota'
Rails 3.1+ way:
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
(каким бы ни был класс).Положить двойные кавычки не получится.
Надеюсь, это то, что вы ищете.