我在 Rails 中使用 Haml 并且一直在使用 :markdown 过滤器(bluecloth gem)编写,但是一段示例代码在 ruby 中,并且页面尝试执行 #{values},我该如何阻止它?
这是代码的中断位:
:markdown
like_frags = [fields].flatten.map { |f| "LOWER(#{f}) LIKE :word#{count}" }
or_frags << "(#{like_frags.join(" OR ")})"
binds["word#{count}".to_sym] = "%#{word.to_s.downcase}%"
count += 1
end
返回的错误:
undefined local variable or method `f'
我自己找到了解决方案,但远非理想:
- f=nil;count=nil;like_frags=[];word=nil;
我把它放在 :markdown 过滤器开始之前。
我知道这是可以做到的,因为我写的时候stackoverflow没有中断,那么我怎么能做到这一点呢?
提前致谢!