小编Fra*_*oML的帖子

在JBuilder中生成嵌套的JSON数组

我在轨道上的红宝石中有这个型号

分支模型:has_many:菜单

class Branch < ActiveRecord::Base           
  belongs_to :place
  belongs_to :city
  has_many :menus , dependent: :destroy
  belongs_to :type_place
end
Run Code Online (Sandbox Code Playgroud)

菜单型号:has_many:产品

class Menu < ActiveRecord::Base
  attr_accessible :description, :product_name, :price, :category_id, :menu_id
  belongs_to :branch
  has_many :products, dependent: :destroy
end
Run Code Online (Sandbox Code Playgroud)

产品型号:

class Product < ActiveRecord::Base
 belongs_to :menu
 belongs_to :category
end
Run Code Online (Sandbox Code Playgroud)

在视图中使用以下代码:

if @condition
  json.code :success
  json.branch do
    json.array!(@branches) do |json, branch|
      json.(branch, :id, :branch_name, :barcode)
      json.menu branch.menus, :id, :menu_name
    end
  end
else
  json.code :error
  json.message 'Mensaje de error'
end
Run Code Online (Sandbox Code Playgroud)

得到:

{
 "code": "success",
 "branch": …
Run Code Online (Sandbox Code Playgroud)

ruby json ruby-on-rails jbuilder

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

jbuilder ×1

json ×1

ruby ×1

ruby-on-rails ×1