Question

Je cherche toutes les organisations avec l'URL « http: // »., Et mettre à jour leurs attributs « »

Ma tentative:

Organization(:all).select { |o| o.url = "http://" ? o.update_attribute("url","")}

Ce qui renvoie une erreur de compilation:

SyntaxError: compile error
 (irb):2: syntax error, unexpected '}'
   from (irb):2

Toutes les idées?

Était-ce utile?

La solution

Essayez d'utiliser update_all

Organization.update_all("url = ''", ["url =?",'http://'])

Autres conseils

Je ne suis pas un expert en rubis, mais mon premier soupçon est que vous utilisez un opérateur d'affectation (=) au lieu d'un opérateur d'égalité (==). Une recherche rapide sur Google pour « rubis conditionnelle irb » semble prouver.

Et vous avez probablement obtenu le vote vers le bas parce que vous ne pas inclure des erreurs de compilation dans votre question. Si je pense est faux, je ne peux même pas essayer d'aider à interpréter le message d'erreur, parce que vous ne lui a pas fourni.

Mise à jour: sur la base du premier commentaire à la réponse, je crois que mon premier soupçon à tort - une mauvaise interprétation de l'intention de la ligne de code. Mais, alors, ce qui se passe quand les messages d'erreur ne sont pas availble.

MAJ2: premier commentaire ... peut-être pas là, il a été supprimé ou peut-être que je commencé à taper au mauvais endroit ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top