2016-06-18 48 views
0

我只是想在年顯示唯一的值。這是我試過到目前爲止如何從一個選擇下拉欄中獲得唯一值

= select_tag("year", options_for_select(Car.all.uniq.map{|c|[c.year, c.year]})) 

我確實知道,uniq的是一個數組。另一個想法是對唯一性進行驗證,但客戶不希望這樣做。

+0

什麼是預期的輸出? – Wikiti

+0

預期的輸出是一個下拉列表。這是什麼,但與uniq年。現在是重複的一年。 –

+0

Car.all.map {| c | [c.year,c.year]} .uniq? –

回答

0

您在Car模型上使用uniq。你應該從集合映射所有這些年來,然後刪除重複:

= select_tag("year", options_for_select(Car.all.map(&:year).uniq)) 
+0

謝謝!我實際上最終使用了拔取而不是地圖 –

0

在這裏,您可以使用選擇字段來獲得獨特的下拉列表中,選中下面的代碼求助:

<%= f.select :year, options_for_select(Car.all.map {|p| [ p.year ]}.uniq, "Select Year"),:prompt => "Select Year",:required => true %> 
相關問題