【发布时间】:2013-09-02 15:19:10
【问题描述】:
这是我试图绕开的代码行:
Category.all.map(&:id).each { |id| Category.reset_counters(id, :products) }
希望有人可以帮助我了解 (&:id) 正在做什么以及它如何影响其他产品线?我相信它会将符号 :id 变成一个 proc 来响应 id?!?但随后就变得混乱了……
提前致谢!
【问题讨论】:
-
绝对是骗子。虽然很难搜索......应该把它拼写成“与号冒号”。 (我不能删除;它有答案)
-
别担心,我搜索了 lambda 运算符快捷方式
-
我更喜欢这个替代方案:
Category.all.each { |cat| Category.reset_counters(cat.id, :products) } -
这对我来说更容易阅读!
-
@jvnill 为什么要将某些东西标记为与本身是重复的东西的重复?
标签: ruby-on-rails ruby block proc