Markdown 中间人:未定义的方法“链接到';从数据文件渲染标记时
我正在使用数据文件中编写的Markdown,用Middleman静态页面生成器在HAML模板中呈现HTML 我的数据文件,Markdown 中间人:未定义的方法“链接到';从数据文件渲染标记时,markdown,middleman,kramdown,tilt,Markdown,Middleman,Kramdown,Tilt,我正在使用数据文件中编写的Markdown,用Middleman静态页面生成器在HAML模板中呈现HTML 我的数据文件,data/faq.yaml如下所示: dog: question: I want to know more about a dog. answerA: (HTML in data) Just <a href="https://google.com">Google</a> it! answerB: (Markdown link in data
data/faq.yaml
如下所示:
dog:
question: I want to know more about a dog.
answerA: (HTML in data) Just <a href="https://google.com">Google</a> it!
answerB: (Markdown link in data) Just [Google](https://google.com) it!
= markdown(data.faq.dog.answerA)
然后我在HAML模板中使用如下内容:
dog:
question: I want to know more about a dog.
answerA: (HTML in data) Just <a href="https://google.com">Google</a> it!
answerB: (Markdown link in data) Just [Google](https://google.com) it!
= markdown(data.faq.dog.answerA)
在我尝试渲染数据文件中编写的降价链接之前,一切都很正常
下面是我的faq.haml
模板,包含:
- 标记链接直接写在HAML中,通过HAML的标记过滤器呈现
- 直接编写HTML链接,从数据中引用
answerA
- 从数据中引用
,该数据具有使用标记语法编写的相同链接answerB
faq.haml
:
.answer
:markdown
(HAML) Just [Google](https://google.com) it!
= markdown(data.faq.dog.answerA)
= markdown(data.faq.dog.answerB)
前两个链接正确渲染,但answerB
中的降价链接引发以下错误:
undefined method `link_to' for #<Object:0x000000044f9e18>
为什么Kramdown在通过引用数据文件的自定义帮助器“被要求”转换标记链接时无法转换标记链接,但在HAML中直接使用相同语法时转换正确吗?如何才能使=markdown(data.faq.dog.answerB)
中的markdown链接正确呈现
注:我的最终目标是引用已在单独的
数据文件中定义的链接,但我认为,为了实现该目标,必须首先解决此问题。应用程序上下文需要传递给Tilt
def markdown(text)
Tilt['markdown'].new(context: @app) { text }.render
end