simple_form rails form for ruby-on-rails ruby-on-rails-3 checkbox

ruby on rails - Casilla de verificación Preseleccionar con Rails Simple_form



rails forms select (6)

Acabo de tropezar con esta publicación y lo que funcionó para mí es similar a la última respuesta, pero más corta. Simplemente inicialice el objeto con la configuración deseada:

def new Object.new(my_boolean: true) end

Estoy usando Simple_Form con Rails 3 y es genial. Tengo una pregunta simple Puedo crear una casilla de verificación utilizando f.input si el tipo es booleano detrás de las escenas. Sin embargo, me gustaría que fuera preseleccionado como verdadero.

¿Hay alguna manera de hacer esto a través de la vista?


En mi opinión, la forma de hacer esto sería establecer el valor del atributo en el controlador:

@ some_object.some_flag = 1


Esto debería funcionar:

= f.input :some_flag, :input_html => { :value => ''1'' }


Funcionó para mí, que solo marca una casilla con el valor "Ninguno"

<%= f.input :notify, label: "Notification", as: :check_boxes, collection: ["None", "Daily", "Weekly", "Monthly", "Quarterly", "Yearly"], :item_wrapper_class => ''inline'', :checked => ["None", true] %>


Si no desea, o no puede actualizar su migración para hacer la respuesta de ''PerfectlyNormal'', puede agregar lo siguiente al final de su entrada de información:

:input_html => { :checked => true }

Entonces, se convertiría en:

= f.input :some_flag, :input_html => { :checked => true }

¡Espero que ayude!


la mejor manera sería establecer el valor predeterminado en su modelo, algo así como

create_table :my_table do |t| ... t.boolean :my_boolean, :default => true ... end

que simple_form detectará y establecerá la casilla de verificación que se marcará de manera predeterminada.

Una forma más simple es hacerlo como dice Dave, y simplemente forzar el valor a 1, pero si falla una validación y muestra el formulario de nuevo, aún se verificará, independientemente de cómo se veía cuando se envió el formulario.