我有一个Rails 4应用程序(使用RedCarpet)和一个看起来像这样的帮助程序方法:
def markdown(text)
options = {
escape_html: true,
hard_wrap: true,
link_attributes: { rel: 'nofollow', target: "_blank" },
space_after_headers: true,
fenced_code_blocks: true
}
extensions = {
autolink: true,
superscript: true,
disable_indented_code_blocks: true
}
renderer = Redcarpet::Render::HTML.new(options)
markdown = Redcarpet::Markdown.new(renderer, extensions)
markdown.render(text).html_safe
end
我的问题是,如果有人输入例如[Example here](www.example.com)
,然后被解析,并且有人点击链接,它会转到 www.mywebsite.com/www.example.com,而不是 www.example.com。
我该如何解决这个问题?
,使用 "[Example here](www.example.com)"
和 RedCarpet 3.0 运行您的方法会返回以下内容:
"<p><a href="www.example.com" rel="nofollow" target="_blank">Example here</a></p>n"
因此,它似乎是您的应用程序中的其他内容。如果您在客户端注意到问题(即单击浏览器中的链接),我的猜测是它在HTML的某个位置的视图中。我会搜索您应用程序的文件目录,尤其是任何 HTML,以查找"www.mywebsite.com"。