我有以下回形針設置。會發生什麼是我正在使用proc來設置各種樣式的大小。但是,proc會在新的超級調用期間被調用。我走過調試器,看起來它首先處理:photo參數,所以它初始化附件,並調用樣式過程,實際對象(照片)未被傳入的參數初始化(特別是photo.gallery_id所以它不設置樣式正確。我甚至嘗試再加工,並沒有幫助。我已經花了這幾天,仍然沒有運氣。任何幫助表示讚賞! class Photo
我不確定這是否實際可行,但我無法在任何地方找到明確的答案。另外,我發現很難僅以「搜索條件」來定義我的問題。所以我很抱歉,如果這已經在別的地方回答,我找不到它。 我想知道的是,如果可以創建一個Proc,該Proc包含未定義Proc的位置中定義的方法。然後我想將該實例放入另一個具有該方法的類中,並使用提供的參數運行該實例。 下面是我想要完成的示例,但不知道如何。 class MyClassA
proc = Proc.new do |name|
puts "Thank you #{name}!"
end
def thank
yield
end
proc.call # output nothing, just fine
proc.call('God') # => Thank you God!
thank &proC# output nothing, to
在RoR的所有教程中,我看到編碼器選擇使用Proc.new的情況,看起來它似乎不必要而且沒有吸引力。 例子,這裏是一個回調放置在模型中,使用一個Proc.new其他可能做同樣的事情: class Order < ActiveRecord::Base
before_save :normalize_card_number,
:if => Proc.new { |order| ord
內「迴歸」關鍵字的人能解釋以下 def iterate
return yield
return "end of iterate"
end
def test_iterate
assert_equal("end of iterate", iterate { return "end of block" })
assert_equal("end of bloc