我在管理信息中心创建表单,您可以使用HTML选择更改公司的所有者;听起来很简单。
我希望将所有用户的ID(user.id
)作为此select的值,但我想显示其全名,这些名称存储在另一个表(user_detail.first_name
和{{1与第一个相关联。
这里有两个问题:
user_detail.last_name
)获取第二个表(user_detail
)的数据
user
方法可能对此有用)谢谢你们;)
答案 0 :(得分:1)
我不知道您的查询是如何从db中检索您要在select上显示的所有用户,但是使用includes
方法从查询的另一个表中检索关联数据,像这样:
@users = User.includes(:user_detail)
# @user.includes(:user_detail).where(...)
然后,构建select_tag所需的数据结构:
@options_for_select = []
@users.each { |user| @options_for_select.push([user.user_detail.full_name, user.id]) }
最后在视图中,使用select_tag的options_for_select方法:
select_tag :owner, options_for_select(@option_for_select)