我做了一些谷歌搜索,我明白Ruby的模板引擎是错误的,但模板引擎是什么意思?
答案 0 :(得分:3)
模板引擎只是表示层,它以html格式表示rails应用程序的实际逻辑/变量。因此,最终用户可以获得他们想要的东西。
考虑您是否拥有@users
对象,并且您希望遍历每条记录并在网页上表示每个用户详细信息的名称。简单的html无法做到这一点。所以erb和其他模板引擎出现了。
这些引擎将变量,函数和用户定义语法的值转换/评估为html格式并表示给最终用户。
希望这会对你有所帮助。
答案 1 :(得分:3)
模板是一种图案,模具或类似物,通常由木板或金属薄板组成,用作机械工作中的量规或指导,用于确定或用作图案;模特:
- 字典定义
在我们的编程世界中,模板是共享共同模式的任何重复性工作的框架。我们将常见模式作为模板提取出来,现在您可以嵌入更改/动态数据并创建工作副本。
示例:您注意到您在医院或政府中获得的表格。办公室里有空白字段供您编写动态数据。最后,您将获得该应用程序的副本。不是吗?
为方便起见,我们将ERB
作为Ruby
标准库中的引擎。
让我们的手弄脏;试试这个,看看结果:
require 'erb'
your_template = <<-TEMP
This document is a template for <%= title %> <%= full_name %>.
Now we are going to have a line written <%= n %> times.
<% n.times do %>
This line must repeat <%= n %> times.
<% end %>
TEMP
title = 'Mr.'
full_name = 'Shiva Gaire'
n = 5
generated_doc = ERB.new(your_template).result
puts generated_doc
<强>输出强>
This document is a template for Mr. Shiva Gaire.
Now we are going to have a line written 5 times.
This line must repeat 5 times.
This line must repeat 5 times.
This line must repeat 5 times.
This line must repeat 5 times.
This line must repeat 5 times.