2013-02-12 40 views
0

所有,我試圖使用Bootstrap導航欄用戶選項來控制顯示給用戶的帖子過濾。在控制器中使用Bootstrap導航欄選項?

該模型包括一個日期時間類型的「過期」字段。

有三種選擇:全部(不過濾),打開(僅顯示未解決的問題)和已關閉(已關閉)。 有沒有辦法做到這一點,而沒有定義三個不同的index.html.erb變種(乾燥問題)。如果@post.expired < Time.now ..過濾器應該只顯示關閉問題等。

說出交替 - 可以控制器'知道'用戶選擇,雖然Navbar,因爲我使用它,只是一個奇特的導航工具欄?

感謝您的任何建議。

+0

你是什麼意思'可以控制器知道'。你的意思是,如果它是一個特定的用戶在導航欄上顯示某種選項? – David 2013-02-12 06:42:44

+0

爲了澄清,用戶從導航欄中選擇All/Open/Closed,控制器應該使用'expired'字段對其進行響應,而不是簡單地轉到三個不同的鏈接。導航欄對於所有用戶來說都是完全靜態的。 – 2013-02-12 06:46:09

回答

0

通常,這是通過在請求中包含參數並在控制器中查找該參數來完成的。自舉導航欄使用常規的錨鏈接,所以你應該能夠輕鬆地添加參數,它們(從doc變形例):

<div class="navbar"> 
    <div class="navbar-inner"> 
    <a class="brand" href="/some_url">List</a> 
    <ul class="nav"> 
     <li><a href="/some_url">All</a></li> 
     <li><a href="/some_url?filter=open">Open</a></li> 
     <li><a href="/some_url?filter=closed">Closed</a></li> 
    </ul> 
    </div> 
</div> 

您可以通過訪問的params[:filter]值讀取控制器中的filter參數。

+0

完全作品,謝謝! – 2013-02-13 05:26:39

相關問題