Rails:在ActiveRecord结果中包含关联值
问题描述:
我有两个对象:用户和图片。Rails:在ActiveRecord结果中包含关联值
一个用户有多张图片。我只想在ActiveRecord查询中包含该用户的“主图片”url。 Url是Picture的一个属性,primary_picture_id是用户的属性。
这里的目标是将结果转化为json的搜索结果。
所以我想要做的是一样的东西:
User.where("...").select(:id, :title, {|user| user.primary_picture.path}).to_json
......但显然,这不是有效的。
有没有办法将关联对象中的属性包含到查询结果中?
谢谢!
本
答
试试这个
User.includes(:primary_picture).select(:id, :title, :path)
谢谢!当我添加,我得到:(对象不支持#inspect) – mrbenhill
我的意思是,调用'to_json',但在控制台中尝试该行,以查看这是否是你想要的,它应该工作 – Ursus