2013-11-21 14 views
7

ich ein kleines Array haben:RoR - collection_select von Array

@dates= ['2013-11-01', '2013-11-02', '2013-11-03', '2013-11-04', '2013-11-05'] 

, wie ich diese Anordnung in einem collection_select in der Ansicht setzen können? Ich habe versucht:

...  
<%= f.collection_select :day, Day.order(:date), :id, @dates, include_blank: false %> 
... 

Antwort

24

Unter der Annahme, dass Sie die Datumszeichenfolgen sowohl für den Wert zu verwenden, bedeuten, (von Form zurück) und Text (im Drop-down angezeigt) des Auswahl dann

= f.collection_select :day, @dates, :to_s, :to_s, include_blank: false 

Dieser Wille Übergeben Sie: to_s an jedes Element der @dates-Auflistung und verwenden Sie die Ergebnisse für den Text (Parameter 3) und den Wert (Parameter 4) des Auswahlelements.