我有一个问题,我有点不好意思问,但似乎无法搞清楚.
我正在编写一个表单,允许用户过滤信息,以便只查看他们想要的内容.在表单中,我使用select_tag帮助程序作为下拉菜单.选择菜单由一组用户填充.我有以下代码:
<% @users.each do |user| %> <%= select_tag "users",options_for_select([user.name]) %> <% end %>
这个问题是它为@users数组中的每个user.name生成一个选择菜单.我假设问题是我在@users上使用.each.但是,今天早上我一直在努力解决这个问题,所以我想我只会问……
在使用select_tag帮助程序时,从数组中获取项目以填充到单个标记的正确方法是什么?
谢谢
解决方法
您不必遍历用户.你可以这样做:
<%= select_tag "users",options_from_collection_for_select(@users,"id","name") %>