Ruby on rails 红地毯不是';t在HTML标记中呈现标记。这是否正常,是否可以覆盖?

Ruby on rails 红地毯不是';t在HTML标记中呈现标记。这是否正常,是否可以覆盖?,ruby-on-rails,markdown,redcarpet,Ruby On Rails,Markdown,Redcarpet,我/我已经编写了一个简单的Rails帮助程序来使用Red地毯转换降价。代码如下: def markdown(text) render_options = { filter_html: false, hard_wrap: true, link_attributes: { rel: 'nofollow' } } renderer = HTML.new(render_options) extensions = { autolink

我/我已经编写了一个简单的Rails帮助程序来使用Red地毯转换降价。代码如下:

def markdown(text)
  render_options = {
    filter_html:     false,
    hard_wrap:       true, 
    link_attributes: { rel: 'nofollow' }
  }
  renderer = HTML.new(render_options)

  extensions = {
    autolink:           true,
    fenced_code_blocks: true,
    lax_spacing:        true,
    no_intra_emphasis:  true,
    strikethrough:      true,
    superscript:        true
  }
  Redcarpet::Markdown.new(renderer, extensions).render(text).html_safe
end
以下传入文本按预期呈现,并以粗体显示“强调”:

但是,以下文本未按预期呈现:

<div>
  This is **emphasized** text.
</div> 

这是**强调**文本。
div中的所有内容保持不变。这是红地毯/降价的正常行为吗?如果是,是否可以将其覆盖?
.

据报告,该问题为,开发人员建议使用支持这种“非标准”降价扩展的降价处理器,例如:

如果您正在寻找一个标记处理器,它的扩展将解析HTML块内的标记,我强烈建议您寻找另一个标记处理器,例如Kramdown,它允许这种混合。()

如果你想沿着这条路线走,你可以这样使用克拉姆敦:

require 'kramdown'

text = "<div>Wow! Markdown _inside_ HTML!</div>"
options = { input: "Kramdown", parse_block_html: true }
Kramdown::Document.new(text, options).to_html
require'kramdown'
text=“哇!减价”\uhtml
选项={input:“Kramdown”,parse_block_html:true}
Kramdown::Document.new(文本,选项)。到\u html

对于有关
parse\u block\u html
选项的官方文档,.

尝试在末尾删除
html\u safe
,我确实尝试过,但它会转义所有内容,因此生成的文本是:
这是**强调**文本这是正常的降价行为。状态为:“请注意,块级HTML标记中不处理标记格式语法。例如,不能在HTML块中使用标记样式
*emphasis*
。”某些实现允许您覆盖该规则,但我看不到Red地毯有这样的选项。也许更熟悉红地毯的人可以证实。
require 'kramdown'

text = "<div>Wow! Markdown _inside_ HTML!</div>"
options = { input: "Kramdown", parse_block_html: true }
Kramdown::Document.new(text, options).to_html