我对活动记录关联查询中的单数形式与复数形式感到困惑。
以下是我的两个模型:
class Biography < ActiveRecord::Base
has_one :lifestyle, dependent: :destroy
end
class Lifestyle < ActiveRecord::Base
belongs_to :biography
end
我是一个搜索表单,通过它我可以找到饮食属于某种类型的传记的生活方式。
query = Biography
query = query.joins(:lifestyle).where(lifestyles: { diet: params[:diet_ids] }) if params[:diet_ids]
result = query.all
我能理解为什么加入(:生活方式)是单一的,因为它是一对一的关系。但为什么生活方式在哪里(生活方式......)复数?是因为表名是复数吗?但我在网络上看到的例子不是复数,如此链接stackoverflow link