什麼是 partial
說明
它是一個模板(Template),就像其他的模板一樣,但是不一樣的地方,它可以傳遞參數,稱為局部樣板(Partial)!
它可以被其他模板(Template)或者Action Controller呼叫,
使用情境
有太多重覆的程式碼在你的 View 裡面時
使用方式
建立 partial 檔案時,必須以底線開頭 _
# 路徑通常是 app/views/_form_post.html.rb
<p><%= f.label :subject, "標題" %>
<%= f.text_field :subject %></p>
<%= f.label :content, "內容" %>
<p><%= f.text_area :content %></p>
-
呼叫時不加底線
<%= render :partial => form_post" %>
-
可以傳實例變數(@開頭的變數)
<%= render :partial => "hot_keywords", :locals => {:category => @category, :a => 1} %>
優點
- Don't repeat yourself(DRY)程式碼不重複
- 程式修改會比較清楚
- Partial 樣板比較容易被重複使用