我有一个产品表,其中每个产品在rails应用程序的Image表中有多个图像。这两个表使用外键,即Image表上的product_id连接。现在我想基于产品ID 以 json格式从两个表中获取数据。我需要在show方法中将哪些代码放在我的控制器上? 感谢。
答案 0 :(得分:0)
你可以用这种最简单的方式做到这一点
def show
product = Product.find(params[:id])
product_images = product.images
respond_to do |format|
format.json {:images => product_images}
end
end
答案 1 :(得分:0)
在您的控制器中
def your_function_name
@product = Product.find(params[:id]) #to find product with id
@product_images = @product.images
respond_to do |format| #for dual functionality JSON as well as HTML
format.html { redirect_to @product }
format.json { @product_images }
end
end
对于Json,您还希望拥有json的视图。为此你可以使用像jbuilder或rabl这样的宝石。 例如,在你使用jbuilder时,你必须创建一个像
这样的视图your_function_name.json.jbuilder
json.extract! @images, :first_variable_of_images, :second_variable_of_images, :created_at