如果我开始 rails console
并输入:
Redcarpet::Markdown.new(Redcarpet::Render::HTML.new).render("line 1 \nline 2").html_safe
(请记住在换行符之前的2个空格中表示强行换行)我得到了预期的结果: <p>line 1<br>\nline 2</p>\n
但是,如果我在ERB中使用此代码,我在页面源中看到的只是包含在 <p>
中的原始文本 . 换行符转义符被保留,但是2个空格消失了,没有 <br>
.
是什么赋予了?谢谢你的智慧 . 如果您解释我如何能够自己隔离问题,请给予额外的赞誉!
2 回答
我解决的解决方法是使用Redcarpet中的“hard wrap”选项 . 这实际上对我的用例来说完全可以接受,但我仍然很好奇,所以如果有人想出原始问题的解决方案,我会改变接受的答案 .
我相信你会做类似的事情
很好解释here