0
Voici une vue d'ensemble de mon domaine:rails: indiquer le verbe HTTP dans un redirect_to
- un utilisateur une liste des cours
- l'utilisateur peut « sélectionner » un cours. L'action correspondante est invoquée avec le verbe PUT , stocke le cours_id dans une variable de session et redirige vers l'action "show" du cours sélectionné.
- lorsque l'utilisateur n'a que 1 cours disponible, je veux le rediriger directement vers le seul cours disponible (et invoquer la méthode "select" avant, du cours ).
A partir de là, je vois 2 options:
- garder le « select » action lorsque l'utilisateur clique sur le lien et ajouter une nouvelle action lorsque la sélection est automatique ... mais n » t semble très DRY (même si je pouvais refactoriser du code)
- appelez l'action PUT du contrôleur lui-même ... mais je n'ai pas trouvé comment (est-ce encore possible)?
Toute alternative est la bienvenue :)
Merci pour votre aide.
P.
Salut, merci pour la suggestion. Je voulais éviter de dupliquer la session [], mais s'il n'y a pas d'autre choix, je pense que ce sera un mal nécessaire. Je vais peut-être en faire une méthode autonome. Merci! P. – Pierre
Pierre, essayez: montrent def @course = Course.find (session [: course_id] au lieu de montrent def = @course Course.find (params [: id]) et vous devriez pouvoir vous débarrasser du param dans la ligne redirect_to –