0
我想了解Rails控制器的以下方法紅寶石產量Rails的控制器變量
def self.collect_with_max_id(collection=[], max_id=nil, &block)
response = yield(max_id)
collection += response
response.empty? ? collection.flatten : collect_with_max_id(collection, response.last.id - 1, &block)
end
當試圖調試與byebug方法我得到了所有的對象收集和max_id值: 我停留在這部分
response = yield(max_id)
雖然是552860227390144512一個max_id,調用響應變量時,我只是得到一個空數組[],它似乎打破整個方法。
有人可以解釋yield函數在這種情況下。我現在只是從ror中渲染視圖和塊。