我正在努力为我的网络项目使用slim-lang。我有以下设置:
此设置正在使用grunt和grunt-slim插件。
乍一看,slim模板编译得很好,但是当我尝试使用partials时,我收到错误:
NoMethodError: undefined method `render' for #Object:0x000000029db190
要重现的示例代码:
_foo.slim:
a (href="#") click
bar.slim:
= render 'foo'
我是前端开发人员,所以我对ruby或rails知之甚少。我不明白是什么导致了这个错误 - 它是咕噜咕噜的插件还是与红宝石有关?
任何帮助将不胜感激!
答案 0 :(得分:2)
咕噜咕噜的插件calls the command-line slim utility。通过创建您提供并运行的两个示例文件,我能够重现您获得的错误消息:
slimrb --trace bar.slim
这个错误正在发生,因为裸render
方法不是苗条宝石的一部分,它是rails的一部分。通过将bar.slim
更改为:
= Slim::Template.new('_foo.slim').render
这显然更加冗长,抱歉。我不确定是否有更好的方法来集成grunt和rails的模板来解决这个问题,但你可以让rails进行渲染。