標記文本將字符串所以我有這個字符串:裏面視圖
"<p> Here it is: </p> <p> <a href="http://localhost:3000/" class="button">Open</a> </p>"
在控制器內部生成此字符串,具體取決於幾個參數。
我希望能夠展示這個字符串在視圖中,解釋爲標記文本:
<div class="row">
<div class="twelve columns panel">
<%= @string_with_markup %>
</div>
</div>
但結果卻是,這並不奇怪,在顯示的字符串,如,所以它顯示了一個一堆標記文本在呈現的頁面中。 雖然render_to_string或yield方法,但它不工作,我想我錯過了一些東西。
附加信息:
整個目的是要表明由系統發送的電子郵件的正文。 電子郵件是使用ActionMailer生成的,當用戶想要查看發送給他的電子郵件時,控制器將調用ActionMailer的適當方法,並提取電子郵件的正文。我談到的那個string_with_markup其實就是class:Mail :: Body
謝謝!
快速的答案,但我會添加到它的解釋 - html_safe設置「字符串」爲HTML安全。這樣,您可以隨意從助手或模型返回HTML安全字符串。 – David 2013-05-11 18:09:11
太棒了! 由於變量@string_with_markup是類Mail :: Body,我不得不打電話給: '@ string_with_markup.to_s.html_safe' 謝謝! – 2013-05-11 18:12:01