我有一个使用:through方法引用另一个对象的对象。
当我执行“show”方法时,将返回对象详细信息,但不返回其关联对象。我已经尝试在查找中包含对象:
@recipe = Recipe.includes(:quantities).find(params[:id])
但无济于事。
当我调试代码并执行
时@recipes.quantities
然后我返回了正确的集合,但默认情况下不会在json中返回该集合。我怎么能这样做?
答案 0 :(得分:3)
在show
方法中执行类似的操作
def show
@recipe = Recipe.includes(:quantities).find(params[:id])
respond_to do |format|
format.html
format.json { render json: @recipe.as_json(:include => :quantities)}
end
end
这实际上隐藏在Rails源代码中,但as_json
根据this question上的答案使用更有意义。