当我希望文本传递时,Rails包含/ render等效,而不是解释为ERB

时间:2011-10-28 13:34:55

标签: ruby-on-rails erb

我有一些浏览器端模板代码可以包含在提供服务的页面中。这是一个使用模板的backbone.js驱动页面(在客户端/ javascript端)。我将以下代码部分地用于测试。我希望这些代码按原样传递给浏览器。

<script type="text/template" id="stats-template">
    <% if (total) { %>
        <span class="todo-count">
          <span class="number"><%= remaining %></span>
          <span class="word"><%= remaining == 1 ? 'item' : 'items' %></span> left.
        </span>
    <% } %>
    <% if (done) { %>
        <span class="todo-clear">
          <a href="#">
              Clear <span class="number-done"><%= done %></span>
              completed <span class="word-done"><%= done == 1 ? 'item' : 'items' %></span>
          </a>
        </span>
    <% } %>
</script>

问题在于,如果我在我的erb模板中使用<%= render 'manage_application_templates' %>,rails会尝试将呈现的代码解释为ruby / erb(即注意<%...%>)。

我想要的是“愚蠢地”传递该部分的内容并将其提供给浏览器。逃避局部中的任何事情都显得很难看。在搜索时,我找不到渲染的愚蠢替代方法或任何可以使渲染表现我想要的选项。我错过了一些明显的东西(可能是的)。

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

render :text => 'sometext'

有关完整的文档,请访问: http://rails.rubyonrails.org/classes/ActionController/Base.html#M000464

答案 1 :(得分:0)

以“.erb”结尾的所有文件都将由ERB解释,不解释没有“.erb”的文件。

只需重命名您的文件。