2010-10-27 8 views
1

Je tente d'écrire un contrôleur RoR qui affichera des données sur une page au nom d'un formulaire préexistant. Ce formulaire consiste en une longue liste de cases à cocher. J'utilise un hachage qui représente les paires nom => valeur des éléments de formulaire. Le problème est que toutes les cases du formulaire utilisent le même nom mais une valeur différente. Je ne sais pas comment représenter plusieurs valeurs pour le même nom dans mon hash de formulaire. En l'état, je ne peux qu'émuler en ayant une seule case à cocher sélectionnée.Message HTTP avec plusieurs cases à cocher (RoR)

Comment puis-je représenter plusieurs cases cochées dans mon hash de formulaire pour mon contrôleur RoR?

+0

Pouvez-vous nous montrer les données d'après-vente? – nfm

Répondre

1

Il transparaît comme un tableau dans ce cas: de sorte que les params comprendrait quelque chose comme {: user => {: activité => [ 'randonnée', 'bateau', 'natation']}}

Extraction: http://www.skuunk.com/2008/05/checkbox-arrays-in-rails.html

+0

J'ai essayé de faire quelque chose comme "checkboxname" => ["value1", "value2"] dans le hachage, mais il semblait l'afficher comme "value1value2". – bsirang

3

Ceci passera toutes les valeurs vérifiées sous la forme d'un tableau.

<input type="checkbox" name="theName[]"/> 
<input type="checkbox" name="theName[]"/> 
+0

Je ne peux pas modifier le formulaire. J'écris un contrôleur pour imiter un formulaire préexistant en affichant les mêmes valeurs dans une tentative d'effectuer une tâche plus efficacement. – bsirang