0

晚上好,伙计们,

我已经生成了四个脚手架 Person、Trainer、Sportsman 和 Index。

class Person < ActiveRecord::Base
  attr_accessible :alter, :name
end

class Sportler < Person
   belongs_to :trainer
end

class Trainer < Person
  has_many :sportler
end

然后我创建了一个表单:views/index/index.html.erb

<table>
  <tr>
      <td>Trainer</td>
      <td>
        trainers = Trainer.find(:all)


        <% @trainers.each do |trainer| %>

          puts "print Results in <select> as Options"
          <select name="trainer">
              </option>Max Musterman</option>
          </select>

        <% end %>

      </td>

      <td>
        <%= link_to 'Neuer Trainer', new_trainer_path %>
      </td>

    <tr>
    <tr>
      <td>Sportler</td>
      <td>
<!--
 <% @sportlers.each do |sportler| %>
       <select name="sportler">
       </select>
 <% end %>
-->
      </td>
      <td>
        <%= link_to 'Neuer Sportler', new_sportler_path %>
      </td>
    <tr>
    <tr>
      <td></td>
      <td></td>
      <td><input type="button" name="trSpAdd" value="Hinzufügen"></td>
    <tr>


</table>

现在我想将 Trainer 和 Sportman 添加到 DropDown 中。 *一名教练可以拥有一名或多名运动员。一名运动员可以拥有一名教练员。使用表格时必须考虑这一点。我该如何解决这个问题。*

我的开始是这样的,它确实查询 Trainer 行并将其放入下拉列表中:

    trainers = Trainer.find(:all)


    <% @trainers.each do |trainer| %>

      puts "print Results in <select> as Options"
      <select name="trainer">
          </option>Max Musterman</option>
      </select>

    <% end %>
4

1 回答 1

0

您应该使用 FormTagHelper 中的 select_tag,如下所示:

select_tag "trainer", options_from_collection_for_select(@trainers, "id", "name")
于 2013-02-09T22:21:30.000 回答