ruby-on-rails – 帮助程序中的HAML过滤器
发布时间:2020-12-17 03:41:33 所属栏目:百科 来源:网络整理
导读:辅助函数可以接收它们生成的块以呈现块.有时候我希望用过滤器指定该块.例如: = doc_page title: 'FAQ' do :markdown # Welcome to the *FAQ* 这不是那么干,因为我们总是一起写doc_page和markdown.我可以让辅助方法接受一个块并将其传递给HAML过滤器.就像是
辅助函数可以接收它们生成的块以呈现块.有时候我希望用过滤器指定该块.例如:
= doc_page title: 'FAQ' do :markdown # Welcome to the *FAQ* 这不是那么干,因为我们总是一起写doc_page和markdown.我可以让辅助方法接受一个块并将其传递给HAML过滤器.就像是: = doc_page title: 'FAQ' do # Welcome to the *FAQ* 在这个幻想中,doc_page是一个辅助方法,可以完成一些设置,然后通过降价传递内容,从而使我们无需在任何地方声明:降低标记并使世界成为干燥的地方. 解决方法
目前,无法在帮助程序中使用过滤器.另一种方法是使用redcarpet来解析markdown,然后将输出传递给帮助器.
一个例子是: = doc_page title: 'FAQ',:markdown do ### my markdown = doc_page title: 'FAQ' do normal html doc_page的实现将是这样的: def doc_page(title,markup=:html) content = yield if markup == :markdown markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML) content = markdown.render(content) end content end 这将解决您的问题,因为您在帮助程序中定义了降价过滤器.而且你的haml中不需要额外的缩进级别. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |