Ruby on rails 填充下拉列表,从多个数据库表中选择

Ruby on rails 填充下拉列表,从多个数据库表中选择,ruby-on-rails,ruby,drop-down-menu,Ruby On Rails,Ruby,Drop Down Menu,我有一个应用程序,用户可以在上面创建三种类型的多个配置文件-社交、专业和特殊兴趣。我有三个模型为用户存储关于这些配置文件类型的信息。我需要创建一个配置文件名称的下拉选择菜单,以便在这些不同配置文件的视图之间导航。我知道可以使用collection\u select从一个数据库表填充,但如何从所有三个表填充 还可以在下拉导航栏上填充它吗?配置文件->查看我的配置文件->动态填充所有配置文件 <ul id="nav" class="dropdown dropdown-horizontal"&g

我有一个应用程序,用户可以在上面创建三种类型的多个配置文件-社交、专业和特殊兴趣。我有三个模型为用户存储关于这些配置文件类型的信息。我需要创建一个配置文件名称的下拉选择菜单,以便在这些不同配置文件的视图之间导航。我知道可以使用
collection\u select
从一个数据库表填充,但如何从所有三个表填充

还可以在下拉导航栏上填充它吗?配置文件->查看我的配置文件->动态填充所有配置文件

<ul id="nav" class="dropdown dropdown-horizontal">
    <li><%= link_to("Profiles", new_profile_path()) %>
    <ul>
          <li><%= link_to("View my profiles") %>
              <ul>
                  <li> *some way to populate my list here* </li>
              </ul> 
          </li>
        </ul>
           .
           .
           .
      • *以某种方式填充我的列表*
    . . .

感谢您的帮助。谢谢

我建议,除非绝对必要,否则您可以使用一个
User
模型和一个
profile
模型,而不是为三种不同的配置文件类型创建三个单独的模型,然后在它们之间创建关联。这将导致更清洁的设计

如果绝对有必要使用三种不同的配置文件模型,则可以这样填充下拉列表

<select id="something">
  <%for profile in @social_profiles%>
    <option value="<%=profile.id%>"><%=profile.name%></option>
  <%end>
  <%for profile in @professional_profiles%>
    <option value="<%=profile.id%>><%=profile.name%></option>
  <%end%>
  .
  .
  .
</select>


我实际上没有称为profile的模型,原因是,这三个profile具有完全不同的字段/条目集。所以,我不认为需要配置文件表,而是使用一对多的关系将用户表与三个不同配置文件直接关联。我的用户模型有很多社会人士和专业人士。我试着用“user”替换上面代码中的“profile”,但似乎不起作用。我是rails新手,所以我的问题可能有点太天真了。
profile
上面是一个循环变量,
@social\u profiles
是一个实例变量。您必须查询社交模型才能获得所有社交记录的列表
@social\u profiles=social.all
。对于
professional\u profiles