在我的应用程序中,我的成员表上有一个collection_select,成员表只包含id。它有一个user_id,project_id,role_id等。
我想在collection_select中显示成员名称。但我只在成员表中有user_id,如何将用户表中的名称显示为选项?
<%= collection_select(nil, :member_id, members, :id, :user_id,
{:prompt => "Select a member"}) %>
现在,选择框显示选项1,2,3,4,依此类推。它必须是来自用户表的name1,name2。
有人对此有经验吗?
答案 0 :(得分:3)
首先,您需要为成员模型添加新方法:
class Member < ActiveRecord::Base
belongs_to :user
def member_name
user.name
end
end
然后将text_method
参数更改为member_name
:
<%= collection_select(:member, :member_id, members, :id, :member_name,
{:prompt => "Select a member"}) %>