Отображать сырой HTML в Haml и Sinatra - PullRequest
2 голосов
/ 06 октября 2011

У меня есть простое приложение Sinatra, которое выполняет HTTP-вызов, и я хочу отобразить заголовок и тело ответа в приложении через Haml. Вот вывод HTTP, который мне нужно отобразить

Response header
    #<Net::HTTPMovedPermanently:0x00000105852158>

Response body
    <html>
    <head>
    <title>bit.ly</title>
    </head>
    <body>
    <a href="http://www.csmonitor.com/Science/2011/1004/Nobel-Prize-for-physics-Universe-expansion-accelerating-not-slowing-down">moved here</a>
    </body>
    </html>

Как правильно сделать это в Хамле? Это то, что у меня есть в настоящее время, и оно не обрабатывает необработанный вывод html должным образом

@@ layout
!!! 1.1
%html
  %head
    %title Just do it!
    %link{:rel => 'stylesheet', :href => 'http://www.w3.org/StyleSheets/Core/Modernist', :type => 'text/css'}  
  = yield

@@ index
Header: 
%p= @resp.header
Body:
%p= @resp.body

Я пытался использовать html_safe и raw, но они не доступны в Синатре.

1 Ответ

1 голос
/ 07 октября 2011

Разобрался, это html_escape помощник, такой как

@@ index
Header: 
%p= html_escape(@resp.header)
Body:
%p= html_escape(@resp.body)
...