Ruby   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ruby-on-rails-3 – 在html视图中渲染一个JBuilder视图大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经用JBuilder创建了一个json视图.但是我想将其预加载到数据对象中,所以BACkbone可以早日访问数据,而无需获取数据.

如何将list.json.jbuilder视图呈现到list.html.erb视图中?

通常没有jbuilder,我会做这样的事情:

<div data-list="<%= @contents.to_json %>"></div>

解决方法

渲染,当从视图中调用时,返回传递的模板或部分的字符串渲染;您可以根据需要将该字符串嵌入到您的视图中.请注意:

>您必须使用后缀/扩展名附加您的模板名称.@R_271_7724@,Rails可能会困惑你正在调用的模板文件;即:它可能会选择list.html.erb而不是list.json.jbuilder.如果您从list.html.erb进行此调用,则尝试渲染list.html.erb导致无限递归和SystemStackError.使用:format的格式选项似乎不起作用.
>您必须指定模板的限定路径;因为list.json.jbuilder位于与list.html.erb相同的目录中,所以找不到“list.json”的正确模板.
>您需要通过raw传递render调用的输出;否则,当它嵌入到视图中时,它将被转义.

所以,举个例子,你可以写这个,假设你的模板在/ app / views / foo中:

<div data-list="<%= raw render(:template => "foo/list.json",:locals => { :contents => @contents }) %>"></div>

大佬总结

以上是大佬教程为你收集整理的ruby-on-rails-3 – 在html视图中渲染一个JBuilder视图全部内容,希望文章能够帮你解决ruby-on-rails-3 – 在html视图中渲染一个JBuilder视图所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。