2012-02-02 13 views
50

Estoy usando la gema simple_form, tengo una colección de países, funciona bien cuando selecciono el país, y el registro actualizado tendrá la identificación del país almacenada, pero, cuando intento editar el registro, el país elegido no es seleccionado por predeterminado en el formulario de edición.rails, simple_form, cómo establecer el índice seleccionado de una colección cuando se carga la página?

Este es el código en el formulario de edición:

= f.input :country_id, :collection => all_countries 

No debería simple_form ver el país seleccionado desde el PP?

+0

> ¿No debería simple_form ver el país seleccionado desde el db? Debería hacerlo porque simple_form es solo una envoltura alrededor de los rieles 'form_for helpers. Verifique su html generado para ver si no hay una opción seleccionada en el código. – Ineu

+0

Creo que sería útil que esta pregunta no usara el término "predeterminado". Cuando veo que creo que estás hablando de cuál sería el elemento seleccionado cuando no has seleccionado nada antes, no cuando has almacenado algo y vuelves a la página. – cesoid

+0

Sí, lo he solucionado, pero la pregunta se hizo un poco más larga :) – simo

Respuesta

117

¿Ha intentado utilizar la opción: selected =>?

:selected => selected_country_id 

Así,

= f.input :country_id, :collection => all_countries, :selected => selected_country_id 

Esto funciona perfectamente !!!

¡Salud!

+0

ie '= f. input: country_id,: collection => all_countries,: selected => selected_country_id' –

+2

Esto no parece funcionar cuando: include_blank se establece en verdadero. ¿Podría ser esto un error? – Remo

+0

Funciona @Remo prueba tu código correctamente. –

7

Sé que esto ha sido respondido, pero vine aquí en busca de una solución similar para una colección de casillas de verificación. Para la posteridad, así es como lo hace:

<%= f.input :country_ids, :as => :check_boxes, :collection => [['USA', :USA], ['Japan', :JPN]], :checked => [:JPN], :include_hidden => false %> 

Espero que esto ayude a alguien.

Cuestiones relacionadas