Utilizando o Rails form select

Pesquisei bastante na internet, até achar uma thread demonstrando como utilizar o form select com um array de objetos.

Geralmente meus selects são populados com arrays do ActiveRecord.

@users = User.all
<% form_for @user, :html => {:method => :post} do |f| %>
 <%= f.select :user_id, @users} %>

O select imprimirá com o to_s de cada objeto do array, para exibir o key (id) e value (descrição), basta utilizar o método collect, que é uma maneira fácil e rápida para esse propósito.

<% form_for @user, :html => {:method => :post} do |f| %>
 <%= f.select :user_id, @users.collect {|user| [ user.name, user.id ] } %>

Outras maneiras para para usar form select

Com um array simples.

<%= f.select :estados, ['SP', 'PA', 'RJ'] } %>

Com um array com arrays.

<%= f.select :estados, [['São Paulo', 'SP'], ['Pará', 'PA'], ['Rio de Janeiro', 'RJ']] } %>

Principais referências