Pergunta

Estou procurando todas as organizações com o URL "http: //" e atualizando seus atributos para "".

Minha tentativa:

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

Que retorna um erro de compilação:

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

Alguma ideia?

Foi útil?

Solução

Tente usar update_all

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

Outras dicas

Não sou especialista em rubi, mas minha primeira suspeita é que você está usando um operador de atribuição (=) em vez de um operador de igualdade (==). Uma rápida pesquisa no Google por "Ruby IRB condicional" parece provar isso.

E você provavelmente teve o voto para baixo porque não incluiu erros de compilação em sua pergunta. Se meu palpite estiver errado, não posso nem ajudar a tentar interpretar a mensagem de erro, porque você não o forneceu.

ATUALIZAÇÃO: Com base no primeiro comentário da resposta, acredito que minha primeira suspeita esteja errada - uma interpretação errônea da intenção da linha de código. Mas, então, é isso que acontece quando as mensagens de erro não estão disponíveis.

Atualização2: Primeiro comentário não está lá ... talvez tenha sido excluído ou talvez eu tenha começado a digitar no lugar errado ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top