1

我正在查找所有 URL 为“http://”的组织,并将它们的属性更新为“”。

我的尝试:

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

返回编译错误:

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

有任何想法吗?

4

2 回答 2

2

尝试使用update_all

Organization.update_all("url = ''", ["url =?",'http://'])
于 2010-06-10T19:29:07.623 回答
0

我绝不是 ruby​​ 专家,但我的第一个怀疑是您使用的是赋值运算符 (=) 而不是相等运算符 (==)。快速谷歌搜索“ruby irb conditional”似乎证明了这一点。

而且您可能会投反对票,因为您的问题中没有包含编译错误。如果我的猜测是错误的,我什至无法帮助尝试解释错误消息,因为您没有提供它。

更新:根据对答案的第一条评论,我相信我的第一个怀疑是错误的——对代码行意图的误解。但是,当错误消息不可用时,就会发生这种情况。

UPDATE2:第一条评论不在那里......也许它被删除了,或者我开始输入错误的地方......

于 2010-06-10T19:22:41.353 回答