我使用Enki博客gem作爲內容管理系統的一種類型。它允許你創建帖子和頁面。它會自動生成兩頁(家庭和檔案)。我還創建了另外兩個示例頁面,即服務和產品,並將創建更多。因此,當我要列出在主頁上的所有網頁,我做這Rails:如何從「每個」方法中排除一個項目
<% page_links_for_navigation.each do |link| -%>
<li><%= link_to(link.name, link.url) %></li>
<% end -%>
Home
Archives
Services
Products
我可能要在以後創建更多的頁面,所以它在所有的頁面像這樣更好地循環,而不是硬編碼每個網頁的網址。
但是,如果我想排除其中一個頁面(即檔案),我將如何更改該代碼。 Enki自動生成該頁面,並且不會給我一個刪除它的選項。不過,我不想刪除檔案,因爲我想用它發佈鏈接到博客帖子。
因此,簡而言之,我將如何排除一個特定的頁面從這個代碼
<% page_links_for_navigation.each do |link| -%>
<li><%= link_to(link.name, link.url) %></li>
<% end -%>
檔案館的網址爲localhost:3000 /檔案館
感謝,這些工作,但是如果我試圖排除第二個頁面,我遇到了麻煩,例如, '家'(以及檔案)。例如,我做了<%if link.name!='Archives'|| '首頁'%>或拒絕{| page | page.name =='檔案','家'}任何想法? – Leahcim 2012-07-11 06:59:23
+1 for'page_links_for_navigation.reject {| page | page.name =='Archives'}。each' – 2012-07-11 07:48:37