Ruby on rails Rails呈现调用赢得';从帮助程序调用时不显示
我有一段代码,当放置在视图中时可以工作,但当代码移动到辅助对象时无法渲染。我知道代码正在执行,因为服务器显示渲染调用,但没有输出到浏览器 此操作有效(放置在视图文件中时) 正如我所说的,我知道调用该方法是因为服务器报告Ruby on rails Rails呈现调用赢得';从帮助程序调用时不显示,ruby-on-rails,render,helper,partials,Ruby On Rails,Render,Helper,Partials,我有一段代码,当放置在视图中时可以工作,但当代码移动到辅助对象时无法渲染。我知道代码正在执行,因为服务器显示渲染调用,但没有输出到浏览器 此操作有效(放置在视图文件中时) 正如我所说的,我知道调用该方法是因为服务器报告\u loadvid.html.erb被渲染了4次。它被称为 <% vidList = "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0" %> <% loadvids vidList %>
\u loadvid.html.erb
被渲染了4次。它被称为
<% vidList = "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0" %>
<% loadvids vidList %>
当我在浏览器中查看源代码时,绝对不会显示任何内容。据我所知,其中的任何调用都不会显示。但是,在中调用函数将显示方法的输出,而不是渲染输出。我能看到的唯一解决方案是捕获渲染输出,然后重新渲染它。当前工作代码如下: 他认为:
<%= render inline: loadvids(vidList) %>
你已经试过了。仅显示vidlist数组内容,也不起作用。如果此解决方案适合您,您可以接受自己的答案。
<% vidList = "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0", "ylLzyHk54Z0" %>
<% loadvids vidList %>
<%= render inline: loadvids(vidList) %>
def loadvids (vidList)
i=1
capture = []
vidList.each do |v|
capture.push render partial: "loadvid", locals: {vidId: i.to_s, divId: "vid"+i.to_s, vidURL: v }
i=i+1
end
capture.join
end