如何在没有 <%= 的情况下在 sinatra 中输出变量
How to output variable in sinatra without <%=
在Rails中,存在"concat"这样的辅助函数,可以在<% %>块中输出变量,用于erb remplates。在不使用 <%= %> 块的情况下,我可以在 Sinatra 中使用哪个助手来执行相同的操作?我的意思是,类似
<%
#code
concat "This should be rendered in HTML, not in console"
#code
%>
编辑
视图中的代码是这样的(是的,逻辑太多,但这是我在 Ruby 中的第一个应用程序):
<% Dir.glob('uploaded/*').select do |entry| %>
<div class="singleFileItem">
<% if File.directory? entry %>
<img src="images/folder.png">
<% else
case entry.to_s.split(".")[1]
when "doc","docx" %>
<img class="pictogram" src='images/word.png'>
<% when "xls","xlsx" %>
<img class="pictogram" src='images/excel.png'>
<% when "pdf" %>
<img class="pictogram" src='images/pdf.png'>
<% when "png", "jpg", "jpeg" %>
<img class="pictogram" class="imageRaw" src="<%= entry.to_s %>">
<% else %>
<% end
end %>
<br>
<span class="subFileText">
<%= entry.to_s.split("/")[1][0..14] %>...
</span>
</div>
<% end %>
谢谢大家,我终于找到了。
我用
扩展了 app.rb 文件
set :erb, :outvar => '@output_buffer'
def concat(text)
@output_buffer << text
end
并且有效。只需在 .erb 视图中输入
<% concat "Text that should be added to render" %>
你们都完成了。希望这对有类似问题的人有所帮助
在Rails中,存在"concat"这样的辅助函数,可以在<% %>块中输出变量,用于erb remplates。在不使用 <%= %> 块的情况下,我可以在 Sinatra 中使用哪个助手来执行相同的操作?我的意思是,类似
<%
#code
concat "This should be rendered in HTML, not in console"
#code
%>
编辑 视图中的代码是这样的(是的,逻辑太多,但这是我在 Ruby 中的第一个应用程序):
<% Dir.glob('uploaded/*').select do |entry| %>
<div class="singleFileItem">
<% if File.directory? entry %>
<img src="images/folder.png">
<% else
case entry.to_s.split(".")[1]
when "doc","docx" %>
<img class="pictogram" src='images/word.png'>
<% when "xls","xlsx" %>
<img class="pictogram" src='images/excel.png'>
<% when "pdf" %>
<img class="pictogram" src='images/pdf.png'>
<% when "png", "jpg", "jpeg" %>
<img class="pictogram" class="imageRaw" src="<%= entry.to_s %>">
<% else %>
<% end
end %>
<br>
<span class="subFileText">
<%= entry.to_s.split("/")[1][0..14] %>...
</span>
</div>
<% end %>
谢谢大家,我终于找到了。 我用
扩展了 app.rb 文件set :erb, :outvar => '@output_buffer'
def concat(text)
@output_buffer << text
end
并且有效。只需在 .erb 视图中输入
<% concat "Text that should be added to render" %>
你们都完成了。希望这对有类似问题的人有所帮助