我在test rails app中使用了text_area
= form_for @post do |f|
= f.text_field :title, size: '40'
= f.text_area :description, size: "80x20"
使用RedCarpet渲染降价
.post-description
= markdown(post.description)
当我在text_area中插入一个列表时,由于描述字段中缺少换行符,因此无法正确显示降价。
结果是这样的
=markdown("1. test 2. test")
我猜表单中的换行符需要保存在数据库中。
使用带有换行符的简单字符串进行测试
=markdown("1. test /n 2. test")
按预期工作。
任何人都可以给我一个提示吗?
答案 0 :(得分:1)
通常textarea
字段的换行符保存为\r\n
,并且可以由redcarpet
进行解析。您需要检查post.description
输出,检查描述编辑是否存在一些jquery插件,如果有回调修改description
。找出description
字段为什么没有'有换行符。
试
require 'redcarpet'
markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML.new)
p markdown.render("1. test 2. test")
p markdown.render("1. eee\r\n2. 113")