Implement collection_select based upon an array

Hello,

I have created an array of time slots as strings and am trying to
display them in a form to be selected upon creation.

This is my Appointments controller file.

helper_method :timeslots

def timeslots

@timeslots = [‘8:30 AM’,‘9:00 AM’,‘9:30 AM’,‘10:00 AM’,‘10:30
AM’,‘11:00 AM’,‘11:30 AM’, ‘12:00 PM’, ‘12:30 PM’, ‘1:00 PM’,‘1:30 PM’,
‘2:00 PM’, ‘2:30 PM’, ‘3:00 PM’, ‘3:30 PM’,‘4:00 PM’]

end

This is my Appointments form.html.erb file

<%= f.label :appointment_time %>
<%= select "obj", "test", timeslots.each_with_index.map { |name, index|} %>

On the form’s page, I just see a blank box with no values. Every time I
add a value, the box gets bigger, but there are no values displayed in
the rows of the select box.

Each / Each with index returns the same array . You need to use map.

http://stackoverflow.com/questions/11596879/why-does-arrayeach-return-an-array-with-the-same-elements

Can you try this

<%= select “obj”, “test”, @timeslots.map.with_index{ |name, index|
[name,
index] } %>

On Mon, Dec 1, 2014 at 3:58 PM, Dmoneyzzz D. [email protected]

Vivek S. wrote in post #1163711:

<%= select “obj”, “test”, @timeslots.map.with_index{ |name, index|
[name,
index] } %>

On Mon, Dec 1, 2014 at 3:58 PM, Dmoneyzzz D. [email protected]

Thanks, it worked