Quantcast
Channel: Active questions tagged ruby - Stack Overflow
Viewing all articles
Browse latest Browse all 4616

Generate a nested JSON array in JBuilder

$
0
0

I have this models in ruby on rails

Branch model: has_many :menus

class Branch < ActiveRecord::Base             belongs_to :place  belongs_to :city  has_many :menus , dependent: :destroy  belongs_to :type_placeend

Menu model: has_many :products

class Menu < ActiveRecord::Base  attr_accessible :description, :product_name, :price, :category_id, :menu_id  belongs_to :branch  has_many :products, dependent: :destroyend

Product model:

class Product < ActiveRecord::Base belongs_to :menu belongs_to :categoryend

with the following code in the view:

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  endelse  json.code :error  json.message 'Mensaje de error'end

gets:

{"code": "success","branch": [{"id": 1,"branch_name": "Sucursal 1","barcode": "zPOuByzEFe","menu": [    {"id": 2,"menu_name": "carta sucursal 1"    }  ]},{"id": 2,"branch_name": "Sucursal Viña Centro","barcode": "RlwXjAVtfx","menu": [    {"id": 1,"menu_name": "carta viña centro"    },    {"id": 5,"menu_name": "carta viña centro vinos"    }  ]},{"id": 3,"branch_name": "dddd","barcode": "eSbJqLbsyP","menu": [   ]  } ]}

But as I get the products of each menu?, I suspect I need to iterate menu, but I have tried several ways without success.


Viewing all articles
Browse latest Browse all 4616

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>