Rails渲染 - 获取部分源而不是输出HTML

时间:2015-06-16 10:10:44

标签: ruby-on-rails renderpartial slim-lang plaintext

我真的没有什么大不了的问题,如果很明显我很糟糕,但是我无法在SO或google上找到这个,这是非常罕见的,反正...我正在使用Ruby on Rails来创建模式库哪个包含代码片段以及示例,现在我所做的是在我的视图中的某个文件夹中创建一个部分 - 现在使用它来渲染这个部分是没有问题的:

= render partial: '/snippets/grid/single-column.html.slim'

但是,对于这些片段,我还想渲染苗条文件的实际来源,例如。

.container
  ul.test
    li: a href="#"
    li: a href="#"
    li: a href="#"
    li: a href="#"

我希望'plain'渲染的输出与上面的代码片段一样。 这样做的原因是我使用Google Code Prettify来美化这些代码以提高可读性,因为我们在这里使用slim作为模板引擎,所以很容易复制代码段并将其粘贴到视图中。

我不确定这是否可行或者此类渲染是否具有特定名称 - 如果是,请告诉:)

作为参考,我查看了下面的地方,看看我是否可以抓住这个:

但是我没有在这里找到答案。 此外,对于rails来说,我是一个新生,所以我在构建这些函数方面还没有很多经验(理解你正在使用的资源很好;)。)。

像往常一样,所有的帮助都是适当的。

提前致谢 - Sidney Liebrand

修改

是的,可能也很聪明的是包含rails / slim版本:

  • Rails 4.2.1
  • Slim 3.0.1

1 个答案:

答案 0 :(得分:4)

您必须像控制器中的字符串一样读取文件的内容,例如:

@code = File.open('app/views/snippets/grid/single-column.html.slim').read

在视图中这样:

<code class="prettyprint"><%= @code %></code>