Sé que esto puede ser una pregunta estúpida, pero no sé cómo crear un método de ruby que acepte un hash de parámetros. Es decir, en los carriles que me gustaría utilizar un método como este:Crear un método de ruby que acepte un hash de parámetros
login_success :msg => "Success!", :gotourl => user_url
¿Cuál es el prototipo de un método que acepta este tipo de parámetros? ¿Cómo los leo?
¿No puedo usar algo como login_success (* params)? – collimarco
a * (alias operador splat) significa que el método acepta cualquier número de argumentos y los pondrá en una matriz llamada params. Decidir si usarlo o no depende de lo que está buscando. En el ejemplo que proporcionó, un hash tiene sentido. – Allyn
Eso dice que esperas cualquier cantidad de argumentos. Como 'foo (1,: b, '3')'. Además, no necesita la parte "= {}" de eso. esto funcionará bien: def login_success (hash). El código anterior simplemente establece el valor predeterminado como un hash vacío. –