Bee*_*ice 2 ruby ruby-on-rails
我有一个菜单模型,它有相同类型的子菜单.就像是:
所以,我需要一种以递归的方式在我的json中包含所有级别的方法.
Rails中的JSON通过两种方法工作:
as_json负责创建对象的哈希表示,同时to_json将该哈希对象表示转换为JSON.
因此,您需要做的是在模型中定义as_json方法以包含您想要的内容.
def as_json
{
:other_options => value,
:submenu => self.submenus.collect { |n| n.as_json }
}
end
Run Code Online (Sandbox Code Playgroud)
这是一个非常粗略的实现,但它将以递归方式访问所有子菜单(因为子菜单本身就是菜单)并将它们渲染为Hash,然后将其转换为JSON.
| 归档时间: |
|
| 查看次数: |
2105 次 |
| 最近记录: |