0

ジェネレーター has_many:results 結果の属し先:generator

すべてのジェネレーターと結果を表示できるページが必要です。

例:これは私のgenerator/index.htmlからのものです

ここに画像の説明を入力

これはresult/index.htmlからのものです

ここに画像の説明を入力

私がしたいのは、それらを組み合わせてすべてのデータを表示することです。ここに画像の説明を入力

現在、これは私が変更したものですが、ncbi_ref_seq のメソッドが未定義であるというエラー メッセージが表示されます。( ncbi_ref_seq はクラス Result に属する属性です)

GeneratorController.rb

def index
    @generators = Generator.all(:include => [:results])
  end

ジェネレーター/index.html.erb

 <tbody>
     <% @generators.each do |generator| %>
     <tr>
        <td><%= generator.primer_length %></td>
        <td><%= generator.choice %></td>
        <td><%= generator.random_primer_generated %></td>
        <td><%= generator.c_primer %></td>
        <td><%= generator.results.ncbi_ref_seq %></td>
    </tr>
     <% end %>
4

1 に答える 1

1

ジェネレーターには多くの結果があるため。generator.results を取得すると Active Record Collection が返されるため、Results のレコードがいくつかあるため、ncbi_ref_seq を追加することはできません。

generator.results をループして、各 ncbi_ref_seq を次のように出力する必要があります。

<% for result in generator.results %>
  <%= result.ncbi_ref_seq %>
<% end %>

または、ジェネレーターの has_one 結果。

于 2013-07-14T16:58:00.870 に答える