Escritura de una sentencia condicional simple en el IRB
-
26-09-2019 - |
Pregunta
Busco a todas las organizaciones con la URL "http: //"., Y la actualización de sus atributos a ""
Mi intento:
Organization(:all).select { |o| o.url = "http://" ? o.update_attribute("url","")}
Lo cual devuelve un error de compilación:
SyntaxError: compile error
(irb):2: syntax error, unexpected '}'
from (irb):2
¿Alguna idea?
Solución
Trate de usar update_all
Organization.update_all("url = ''", ["url =?",'http://'])
Otros consejos
Estoy de ninguna manera un experto en rubí, pero mi primera sospecha es que usted está utilizando un operador de asignación (=) en lugar de un operador de igualdad (==). Una rápida búsqueda en Google para "rubí IRB condicional" parece demostrar esto.
Y es probable que obtuvieron el voto hacia abajo debido a que no incluyó errores de compilación en su pregunta. Si mi suposición es incorrecta, no puede incluso ayudar a tratar de interpretar el mensaje de error, debido a que no proporcione.
ACTUALIZACIÓN: basado en el primer comentario a la respuesta, creo que mi primera sospecha de estar equivocado - una mala interpretación de la intención de la línea de código. Pero, entonces, esto es lo que sucede cuando los mensajes de error no son disponible.
Update2: el primer comentario no existe ... tal vez se ha eliminado o tal vez comenzó a escribir en el lugar equivocado ...