2011-02-07 15 views
12

Estoy usando Rails 2.3.8. Mi código:Etiqueta de asociación y botón de opción en Rails

<%= f.radio_button :status, "draft" %> 
<%= f.label :status, "Draft" %> 
<%= f.radio_button :status, "published" %> 
<%= f.label :status, "Published" %> 

Salida:

<input id="shop_status_draft" name="shop[status]" type="radio" value="draft" /> 
<label for="shop_status">Draft</label> 
<input checked="checked" id="shop_status_published" name="shop[status]" type="radio" value="published" /> 
<label for="shop_status">Published</label> 

Obviamente, el label no está asociando con mis botones de radio correctamente. Quiero hacer que el label sea igual que el botón de opción id. ¿Cómo puedo corregir eso?

Gracias.

Respuesta

35

probar este

<%= f.radio_button :status, "draft" %> 
<%= f.label :status, "Draft", :value => "draft" %> 
<%= f.radio_button :status, "published" %> 
<%= f.label :status, "Published", :value => "published" %> 
+1

Soy nuevo en RoR y no encuentro manera más fácil de manejar Formtastic vistas de formulario. Puede intentarlo: https://github.com/justinfrench/formtastic – LapinLove404

+1

¡Gracias! ¡Funciona genial! – Victor

+0

Esto es exactamente lo que necesitaba, ¡gracias! En mi caso los valores eran 'true' y' false' y funcionó bien. También agregué una etiqueta principal en la parte superior para el texto de la pregunta '<% = f.etiqueta: estado," Estado: "%>'. – Matt

0

Esto funcionó para mí, donde yo estaba bucle a través de planes:

<% @plans.each do |plan| %> 
    <%= radio_button_tag :plan_id, plan.id %> 
    <%= label_tag 'plan_id_' + plan.id.to_s, plan.name %> 
<% end %> 
Cuestiones relacionadas