2009-09-15 10 views
3

Comment puis-je transmettre une valeur booléenne dans un formulaire à un contrôleur sans que l'utilisateur puisse le voir ou le modifier? Je suppose que hidden_field est utilisé pour cela, mais comment puis-je attribuer une valeur à la variable?Formulaire booléen Ruby on Rails

Merci pour l'aide -Pat

+2

Ne croyez pas qu'une valeur ne sera pas modifiée par l'utilisateur simplement parce qu'elle est cachée dans un formulaire. – jdl

Répondre

4

Pat,

Je suis un peu confus par ce que vous entendez le « mais comment puis-je puis attribuer une valeur à la variable », mais je vais vous donner c'est parti.

Tout d'abord, vous avez raison dans le bit hidden_field.

<%= hidden_field_tag 'some_name', true %> 

ou bien

<%= hidden_field_tag 'some_name', false %> 

Vous obtenez le point avec ça, je suis sûr.

À partir de là, dans votre contrôleur, lorsque le formulaire est soumis, vous obtiendrez la valeur de ce champ comme ceci:

some_boolean = params[:some_name] 

noms Évidemment variables seraient différentes, mais c'est le sens général de tout cela.

Bonne chance!

+0

désolé je n'étais pas très clair, j'ai eu un champ mysql qui était censé prendre une valeur booléenne et en fonction de la forme que je voulais lui attribuer vrai ou faux. J'ai fini par utiliser un bouton radio qui n'était pas rendu sur la page qui avait la valeur correcte pour passer dans mysql. Merci pour l'aide cependant. –