2010-01-11 4 views
0

C'est assez simple, je ne peux pas tout à fait l'obtenir. Je suis sûr qu'il y a un moyen de le faire.Rails: remplir un formulaire avec un nom, en soumettant un ID

Lors de la création d'un nouveau commentaire, je souhaite que l'utilisateur puisse entrer son nom dans un champ, mais que le formulaire soumette l'ID correspondant à son nom (ou lance une erreur/crée une nouvelle personne).

Merci!

Répondre

0

Il y a deux façons d'aller à ce sujet:

  1. Dans votre contrôleur, diviser le nom « » et enregistrez chacun à une variable, puis faire un User.find_by_firstname_and_lastname(firstname, lastname). Si aucun n'existe, dites à l'utilisateur d'en créer un.
  2. Avoir le champ de texte que les utilisateurs entrent leur nom dans un champ AJAXified qui recherche leur nom d'utilisateur et leur permet de sélectionner le bon. Si aucun n'existe, vous pouvez alors le découvrir immédiatement et leur dire qu'ils doivent créer un compte. S'il en trouve un, il définit la valeur d'un champ caché à l'ID de l'utilisateur sélectionné.

L'option 1 est très sujette aux erreurs, mais l'option 2 nécessite un peu plus de travail. Honnêtement, cela va être difficile à réussir. Que faites-vous s'il y a deux John Smith? Comment savent-ils lequel choisir, comment choisir dans le backend, etc.

Je suggère fortement de le faire basé sur le nom d'utilisateur au lieu du prénom ou du nom de famille. Toutefois, si vous montrez à l'utilisateur celui que vous allez utiliser (éventuellement en indiquant son nom d'utilisateur, son adresse e-mail, etc.), cela pourrait fonctionner.

Questions connexes