如何在erb中使用产量进行模板继承?我想在普通的ruby CGI脚本中使用erb,并希望像使用基本模板和子模板一样使用应用程序模板的Rails。在没有导轨的ERB中产量
12
A
回答
3
我不认为你可以 - Rails提供该基础设施作为actionpack的一部分。
你可以做的是将actionpack添加到脚本中。
或者,您可以自己滚动轻量级模板系统。
或者使用Rails或Merb或Sinatra。
35
def a
ERB.new('<%= yield %>').result(binding)
end
a{123}
#=> "123"
该呼叫到Kernel#binding
是在一个方法中是很重要的,这样的上下文包括块(ERB#result
不会拿块)。
+0
我无法得到这个工作。再培训局如何知道它应该在收益率中表现出来? – 2013-02-03 18:58:33
5
退房倾斜(http://github.com/rtomayko/tilt/)。这是在Sinatra中处理模板的宝石,它提供了ERB产量以及许多其他好的功能。
3
您可以使用倾斜,但如果你不想增加额外的依赖关系,这里是你如何能在该局得到一个更好的例子:
require "erb"
class Controller
TEMPLATE = ERB.new("Hello <%= @someone %>\n\n<%= yield %>")
def initialize(someone)
@someone = someone
end
def render
TEMPLATE.result(self.get_binding { yield })
end
def get_binding
binding
end
end
puts Controller.new("World").render { "I'm Jack" }
# =>
Hello World
I'm Jack
我找到了答案here。
0
我写的关于这里http://hostiledeveloper.com/2015/05/28/working-with-templates-in-ruby-erb.html
添加此为标准库的ERB这是令人惊讶的在一个痛苦的对接。
相关问题
- 1. 将导轨变量转换为js erb
- 2. 资产没有在导轨的生产中加载
- 3. 导轨资产没有在生产中预编译
- 4. 导轨的产量布局
- 5. 导轨产量 - content_for问题
- 6. 部分在轨中有多个产量
- 7. 导轨生产中的SystemStackError
- 8. 导轨资产没有预编译,css在生产中看起来不同
- 9. 导轨 - 水豚不会处理ERB
- 10. 导航栏中的红宝石与产量的导轨
- 11. 没有导轨的ActiveModel
- 12. 是否有绕过导轨资产管道的导轨选项?
- 13. 如何通过JavaScript变量轨ERB
- 14. 导轨nomethoderror只在生产
- 15. 导轨产生--H没有显示它的文档
- 16. 如何使用没有链轮的导轨资产?
- 17. 导轨没有错误生产的详细信息
- 18. 罗德没有ERB
- 19. ERB未被资产管道导入
- 20. <%== %>在轨erb中做什么?
- 21. ruby和erb在centos中没有响应
- 22. 在导轨中定制产品规格
- 23. 没有外键导轨
- 24. 在小胡子中使用参数导轨产量
- 25. ERB到Haml的轨道
- 26. 导轨没有路径匹配资产后:预编译
- 27. 导轨产生迁移错误mongo_mapper没有发现
- 28. 如何管理导轨资产没有宝石
- 29. ERB模板中的jQuery没有执行
- 30. 在生产中导轨电子邮件错误,在生产控制台中没有发生
尽管得票低,布局和模板继承是Rails的一部分,而不是ERB本身。 – 2011-03-07 10:37:51