0

我正在阅读 Rails 和很多地方我看到这个词“模板”?它是“视图模板”的缩写吗?它们是否意味着例如视图文件夹中的 index.html.erb 或 show.html.haml 文件?

例如这里http://guides.rubyonrails.org/layouts_and_rendering.html当他们谈论渲染模板时:

如果要渲染与同一模板中的不同操作对应的视图,可以使用带有视图名称的渲染:

他们所说的“ rendering”是什么意思?有时候我们说

使成为

我们的意思是转到另一个页面?有时不是。我的意思是我无法理解“渲染”和"redirect_to"

4

1 回答 1

2

在 Rails 中,模板和视图的地址或多或少是相同的。view 是“资源的可视化表示”,template 是具体的表示。因此,视图通常具有每种格式的表示形式,这意味着您将拥有 html 模板、js 模板、xml 模板等。

渲染意味着将您的模板解析为字符串,以作为您的 http 响应的正文发送。通常,您将模板呈现为响应的主体。在这个模板中,您可以使用#render 调用来渲染子组件,在 Rails 中称为部分,在多个地方使用的 html 片段,因此可以重用。您还可以在 respond_to 子句中的控制器操作中使用 #render 来处理要呈现的模板,这就是您发布的那个位的含义。

渲染意味着您的响应将有一个正文。redirect_to 指示他们需要“去其他地方”的浏览器,这个响应没有正文,因此不呈现任何内容。要彻底理解这意味着什么,您必须阅读一些有关 HTTP 协议的内容。

于 2013-05-17T12:51:23.787 回答