Je sais que cela peut être une question stupide, mais je ne sais pas comment créer une méthode ruby qui accepte un hachage de paramètres. Je veux dire, dans Rails, je voudrais utiliser une méthode comme ceci:Créer une méthode ruby qui accepte un hachage de paramètres
login_success :msg => "Success!", :gotourl => user_url
Quel est le prototype d'une méthode qui accepte ce genre de paramètres? Comment les lis-je?
Est-ce que je ne peux pas utiliser quelque chose comme login_success (* params)? – collimarco
a * (aka opérateur splat) signifie que la méthode accepte n'importe quel nombre d'arguments et les placera dans un tableau appelé params. Décider de l'utiliser ou non dépend de ce que vous recherchez. Dans l'exemple que vous avez fourni, un hachage a du sens. – Allyn
Cela dit que vous attendez un certain nombre d'arguments. Comme 'foo (1,: b, '3')'. De plus, vous n'avez pas besoin de la partie "= {}" de cela. cela fonctionnera bien: def login_success (hash). Le code ci-dessus définit simplement la valeur par défaut comme un hachage vide. –