【发布时间】:2014-08-28 15:58:34
【问题描述】:
我想用 Ruby 生成一个 HTML 页面,我很好奇是否可以以某种方式混合静态部分 HTML 和生成动态部分的 Ruby 语句。有什么神器可以做到这一点吗?
【问题讨论】:
-
谷歌“ruby erb”开始:)
我想用 Ruby 生成一个 HTML 页面,我很好奇是否可以以某种方式混合静态部分 HTML 和生成动态部分的 Ruby 语句。有什么神器可以做到这一点吗?
【问题讨论】:
是的,这是可能的。
把你的文件名改成file_name.html.erb
<form action="<%= ruby here %>" method="get" >
<%= rand() %> <!-- Pure ruby here -->
<%= submit_tag "Search", :name => nil%> <!-- options in ruby -->
</form>
【讨论】:
您可以使用我开发的 dom gem 在纯 Ruby 代码中生成 HTML 字符串。使用它,您可以执行以下操作:
require "dom"
["foo".dom(:span, class: "bold"), "bar"].dom(:div).dom(:body).dom(:html)
# => "<html><body><div><span class=\"bold\">foo</span>bar</div></body></html>"
【讨论】: