Drop down with model info

I have this code:

<%= f.select :name, [@m.each do |n|
         [ n.first_name , n.first_name ]
           end], :class => 'gam' %>

and i want it to display each of the first_name records from the table
that @m is associated with in a drop-down. When i test this code the
only option in the drop down menu it #Player:0x3c88008> (Player is the
name of the table that @m is associated with) i know from previous
testing that everything works fine besides this code.

Any ideas or help would be fantastic!

I have this code:

<%= f.select :name, [@m.each do |n|
         [ n.first_name , n.first_name ]
           end], :class => 'gam' %>

#each returns @m, so what you want is #map or collect. Try

<%= f.select :name, @m.map { |n| [n.first_name, n.first_name] }, :class =>
'gam' %>

There's an optimization for this: collection_select

f.collection_select( :name, @m, :first_name, :first_name, :class => 'gam' )

Walter

>
>
>
> I have this code:
>
> <%= f.select :name, [@m.each do |n|
> [ n.first_name , n.first_name ]
> end], :class => 'gam' %>
>
> #each returns @m, so what you want is #map or collect. Try
>
> <%= f.select :name, @m.map { |n| [n.first_name, n.first_name] }, :class
=> 'gam' %>
>
>
> and i want it to display each of the first_name records from the table
> that @m is associated with in a drop-down. When i test this code the
> only option in the drop down menu it #Player:0x3c88008> (Player is the
> name of the table that @m is associated with) i know from previous
> testing that everything works fine besides this code.

There's an optimization for this: collection_select

f.collection_select( :name, @m, :first_name, :first_name, :class => 'gam' )

You're right Walter but make sure to add an empty hash before the html
options
for the options parameter

f.collection_select :name, @m, :first_name, :first_name, {}, :class => 'gam'

Something like that?

<%= f.select :city_id, @cities.map { |city| [city.name, city.id] } %>