Ruby on Rails/ActionView/ERb
外觀
ERb(嵌入式 Ruby)是 Rails 附帶的預設模板語言。它與 PHP、JSP 和 ASP 非常相似。
- <%= %>將渲染嵌入式 Ruby 表示式返回的結果作為文字
- <% %>將執行嵌入式表示式,但不渲染結果
- <% -%>將執行嵌入式表示式,但不渲染結果,並將抑制尾隨空格
- <%- %>將執行嵌入式表示式,但不渲染結果,並將抑制前導空格
- <%# %>將導致嵌入式表示式被解析為註釋
在開發 Rails 應用程式時,您可能會遇到一些作為 ERb 一部分的實用程式方法
- h(s)或html_escape(s)- 用於在提供的字串中轉義 HTML 標籤字元的實用程式方法s
- u(s)或url_encode(s)- 用於對字串進行編碼的實用程式方法s作為 URL
<h1>People</h1>
<ul>
<% @people.each do |person| -%>
<li><%= person.first_name %></li>
<% end -%>
</ul>
如果 @people 包含 Person 例項陣列,這將渲染類似於以下內容
<h1>People</h1>
<ul>
<li>Bob</li>
<li>Joe</li>
<li>Mary</li>
</ul>
- 雖然可以在檢視中放置業務邏輯,但應該避免這樣做。業務邏輯應該放在模型中,在那裡可以輕鬆測試和重用。
- 行
<%= render :partial => '/layouts/menu' %>將渲染部分app/views/layouts/_menu.