2016-08-08 5 views
1

私は非常に新しいレールです。フォームの一環として、各メンバーのラジオボタンが必要です。トライアルとしてRails複数のラジオボタンが独立していない

、私の/ビューの一部は次のとおりです。

 <table> 
     <tr> 
      <% Topic.listings.each do |listing| %> 
       <td><%= listing %></td> 
      <% end %> 
      <tr> 
      <tr> 
      <% Topic.listings.each do |listing| %> 
       <td> <%= render 'layouts/button' %> </td> 
      <% end %> 
      </tr> 
    </table> 

レイアウト/ _button.html.erbは次のとおりです。

<%= radio_button_tag(:listing, "present") %> 
    <%= label_tag(:listing_present, "Present") %><br> 
    <%= radio_button_tag(:listing, "absent") %> 
    <%= label_tag(:listing_absent, "Absent") %><br> 
    <%= radio_button_tag(:listing, "unknown") %> 
    <%= label_tag(:listing_unknown, "Unknown") %><br> 

及び/モデル内:

def self.listings 
     @listings = ["A","B","C"] 
    end 

これは、リストの各メンバーの下に3つのラジオボタンを必要に応じて提供しますが、ラジオボタングループは独立していません。 「A」の下にボタンが選択されている場合は、「B」または「C」の下のボタンをクリックするとそのボタンが削除されます。

ボタンのグループをどのようにして独立させることができますか。ありがとうございました。

ハワードG

答えて

0

これは、生成されたHTMLに問題があります。 Radio buttons are grouped by name

生成するラジオボタンの名前属性(リスト)は同じです。だから彼らは一緒にグループ化されています。

それぞれのグループには3つのボタンの名前が異なる必要があります。私はすべての 'IDの(' 私のコードで定義されていなかったのid」)を取り除いた後、そのcoorasse

<% Topic.listings.each do |listing| %> 
    <td> <%= render 'layouts/button', listing: listing %> </td> 
<% end %> 

<%= radio_button_tag("listing_#{listing.id}", "present") %> 
<%= label_tag("listing_#{listing.id}_present", "Present") %><br> 
<%= radio_button_tag("listing_#{listing.id}", "absent") %> 
<%= label_tag("listing_#{listing.id}_absent", "Absent") %><br> 
<%= radio_button_tag("listing_#{listing.id}", "unknown") %> 
<%= label_tag("listing_#{listing.id}_unknown", "Unknown") %><br> 
+0

多くのおかげでうまくいきました。 「id」メソッドを作成した方がより専門的でしたか? – user2900160

+0

私はそれが存在することを期待していたでしょう、おそらくあなたは名前や別の属性を使用することができます。正しい場合はアップホートして回答を承認してください。 – coorasse

関連する問題