2011-02-25 57 views
5

我有一个问题,我有点尴尬问,但似乎无法弄清楚。Rails 3 - select_tag helper - array

我在写一个表单,允许用户过滤信息,以便他们只看到他们想要的东西。在表单中,我使用select_tag帮助器作为下拉菜单。选择菜单由一组用户填充。我有以下代码:

<% @users.each do |user| %> 
    <%= select_tag "users", options_for_select([user.name]) %> 
<% end %> 

问题在于,它是否会为@users数组中的每个user.name生成一个选择菜单。我认为问题在于我在@users上使用.each。然而,我一直在努力,这太长,今天早上,所以我想我只是问...

什么是使用select_tag助手从一个数组中获取项目以填充到单个标签的正确方法?

谢谢

回答

8

您不必遍历用户。你可以这样做:

<%= select_tag "users", options_from_collection_for_select(@users, "id", "name") %>