在 Ruby 中常常可以看到这种语法:
def self.middleware @middleware ||= begin …… end
请问是什么含义?
如果 @middleware 有值,后面的就不会执行了
@middleware = @middleware || begin ... end
最常见的用法是拿来缓存表达式结果(即 begin ... end 只会第一次跑到)。当然对于 rails 来说,仅对同一 request 有效。
@huacnlee @ashchan 理解了,非常感谢 :)