Rails 3 menu déroulant, sélectionnez les cases?
Je suis en train de travailler sur un intranet simple demande faite avec Rails 3.1.
J'ai un modèle pour les liens qui comporte les champs suivants:
name:string
url:string
colour:string
J'ai mis de la couleur de l'attribut dans une classe dans la vue, comme suit:
<a href="linkaddress" class="<%= link.colour %>">Link Name</a>
En ce moment dans le nouveau lien du formulaire j'ai juste un simple formulaire dans lequel l'utilisateur peut taper n'importe quoi et il deviendra le href classe comme prévu.
Ce que je voudrais faire est de créer une liste déroulante d'options prédéfinies, ces options sont tout simplement rouge, vert et bleu (par exemple). Comme cela semble assez simple, je ne pense pas qu'il n'y a aucun besoin d'un helper.
J'ai lu quelques autres questions et réponses sur DONC et ils semblent montrer des exemples où vous avez le nom suivi d'un numéro d'identification. Je veux juste avoir le code ci-dessous:
<select name="colour">
<option value="red">Red</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
</select>
Je suis sûr que c'est simple mais je ne peux pas obtenir ma tête autour de lui. J'ai lu les Rails de l'API info et le select_for_tag a me confond!
OriginalL'auteur dannymcc | 2012-03-09
Vous devez vous connecter pour publier un commentaire.
Il suffit d'utiliser un standard sélectionnez l'élément dans votre formulaire pour définir la couleur variable:
OriginalL'auteur Jon
Où la Couleur est le nom de votre modèle, vos couleurs et f est l'objet form builder:
Ce serait la plus simple et la plus simple méthode pour obtenir une sélection avec la couleur de l'url comme la valeur et le nom que le texte. Si vous souhaitez à la fois le nom de la valeur et de texte, vous pouvez modifier :url :nom ainsi.
En outre, et pour la sémantique, vous auriez probablement envie de mettre un @les couleurs de la collection dans votre contrôleur et de l'utiliser plutôt que de l'appeler pour le modèle de votre point de vue (pour remplacer la Couleur.tous).
Mise à JOUR: d'après votre commentaire ci-dessous et si vous n'avez pas un modèle pour la collecte et veulent simplement coder en dur votre de sélectionner et de valeurs, essayez:
oh, d'accord, je vais mettre à jour la réponse. Désolé j'ai mal compris.
OriginalL'auteur miked
Vous souhaitez utiliser les rails helper, car alors que les rails prendre soin de déplacer les données dans votre modèle. donc vous les plus susceptibles de vouloir quelque chose comme ce qui suit.
Cette Page peut être un peu verbeux, mais il pourrait aider à la façon dont vous êtes en train de penser à ce sujet.
OriginalL'auteur Mgrandjean