2012-06-30 35 views
1

我一直在通过堆栈以及其他互联网拖网回答这个问题,没有什么真的似乎提供了“足够”的答案,使任何进展。我是一个web开发的完全新手,所以任何帮助,将不胜感激。从模型中填充选择框在轨道名称

在我的模型中,每个用户都有通过分配的许多角色,并且角色通过分配有许多用户。

当我创建新的作业时,我想在每个用户的姓氏的前面加上下拉框。我似乎无法在网上找到任何东西来指导我,但是可能我没有使用正确的术语来搜索内容。任何指针将非常感谢!

我已经试过:

<%=f.select :user_id, select("assignment", "user_id", 
    User.all.collect {|u| [ [u.name,u.surname].join(" "), u.id ] }, 
    { :include_blank => true }) %> 

,但所有的返回是一个空白的选择框。我通过控制台通过收集查询来运行它,以确保它正常工作,但出于某种原因,它没有填充选择框。

回答

0
select("assignment", "person_id", 
    Person.all.collect {|p| [ [p.first_name,p.last_name].join(" "), p.id ] }, 
    { :include_blank => true }) 

或在你的模型中定义FULL_NAME和使用

options_from_collection_for_select(@people, 'id', 'full_name')