我尝试将has_one
关联扩展为方法:
has_one :subscription_plan, -> { where current: true } do
def in newspaper
where newspaper: newspaper
end
end
并收到错误undefined method 'in' for #<SubscriptionPlan...>
但它适用于has_many
:
has_many :subscription_plans, -> { where current: true } do
def in newspaper
where(newspaper: newspaper).take
end
end
如何使它适用于Rails 4.2.1上的has_one
?
答案 0 :(得分:0)
通过访问has_many
关联,您会收到SubscriptionPlan::ActiveRecord_Associations_CollectionProxy
但has_one
只会收到SubscriptionPlan
个实例。
所以这里没有什么可以延伸的。
如果您要提供有关模型的更多信息,我会帮助您准确的代码。