Às vezes, queremos fazer coisas como exibir trechos de código em nossas visualizações de trilhos. Tradicionalmente, faríamos isso escapando das entidades de nosso HTML e apenas colocando-o entre as <pre>
tags, mas o rails nos oferece uma maneira melhor por meio do uso da gem htmlentities e um método inteligente de ajuda.
Primeiro, adicione a gema htmlentities ao seu Gemfile:
gem 'htmlentities'
Em seguida, podemos envolver o método de renderização existente em nossas visualizações e fazê-lo renderizar o HTML da visualização. Coloque isso em seu application_helper.rb
arquivo:
def render_source args={}
@html_encoder ||= HTMLEntities.new
raw(@html_encoder.encode(render args))
end
No meu projeto, tenho um chamado parcial _signup_snippet.html.erb
, agora posso renderizá-lo em uma visualização de forma limpa com o seguinte:
<pre>
<%= render_source :partial => "signup_snippet" %>
</pre>
Fácil! Eu não tentei fazer isso com nada além de renderização parcial, mas espero que funcione de maneira semelhante com os outros render
suportes de opções , mais informações na página do guia rubyonrails.org .