jbuilder的json.partial!方法

目录结构app--v1--orders   --index.json.jbuilder

       --show.json.jbuilder

                                               --_order.json.jbuilder

                             --rooms   --_room.json.jbuilder

      --index.json.jbuilder

                             --user       --_user.json.jbuilder

                             --places   --autocomplete.json.jbuilder


jbuilder的json.partial!渲染局部页面的方法很智能由两种方法应用:

方法一:

例子1

在order文件夹的index.json.jbuilder中

json.data do
  json.orders @orders do |order|
    json.partial! order, {order: order, render_detail: false}
  end
end

在_order.json.jbuilder中

json.user do
  json.partial! order.user, render_detail: false
end

不用标明路径直接就可以找到user文件夹中的_user.json.jbuilder模板

例子2

在autocomplete.json.jbuilder中

  if @search_rooms.present?
    json.search_rooms @search_rooms do |room|
      json.partial! room, render_detail: false
    end
  end

这里可以直接找到rooms文件夹中的_room.json.jbuilder模板进行渲染


方法二:

在rooms文件夹的index.json.jbuilder中

  json.rooms @rooms do |room|
    json.cache! [room, I18n.locale], expires_in: 24.hours do
      json.partial! "rooms/room", locals: {render_detail: false, room: room}
    end

end

则直接绝对路径找到rooms文件夹中的_room.json.jbuilder模板进行模板

  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页

打赏作者

qwbtc

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值