proc-object

    0熱度

    2回答

    我有以下回形針設置。會發生什麼是我正在使用proc來設置各種樣式的大小。但是,proc會在新的超級調用期間被調用。我走過調試器,看起來它首先處理:photo參數,所以它初始化附件,並調用樣式過程,實際對象(照片)未被傳入的參數初始化(特別是photo.gallery_id所以它不設置樣式正確。我甚至嘗試再加工,並沒有幫助。我已經花了這幾天,仍然沒有運氣。任何幫助表示讚賞! class Photo

    0熱度

    1回答

    我不確定這是否實際可行,但我無法在任何地方找到明確的答案。另外,我發現很難僅以「搜索條件」來定義我的問題。所以我很抱歉,如果這已經在別的地方回答,我找不到它。 我想知道的是,如果可以創建一個Proc,該Proc包含未定義Proc的位置中定義的方法。然後我想將該實例放入另一個具有該方法的類中,並使用提供的參數運行該實例。 下面是我想要完成的示例,但不知道如何。 class MyClassA

    0熱度

    3回答

    我正在遍歷一個對象圖並想要傳遞一個塊,該塊將從方法的結構的每個節點上運行 - 我們稱之爲訪問。 在頂部,我打算用一個塊調用,並且我想委託初始調用來訪問根對象以訪問其他對象。 我可以使用& last_parameter_name在本地將塊解壓縮到proc中,但是如何將proc返回到我委託調用的塊中? 這裏有一個簡單的例子,我叫第一(...),並希望通過我的電話委派塊第二(...) def secon

    4熱度

    2回答

    我想用一個同名的過程和調用約定來替換「proc N」的定義,但只需要一些額外的錯誤檢測代碼。 在python中,我可以在下面做我想做的事情,但我沒有掌握如何在tcl中使用名稱空間和函數句柄。 __orig_N = N def N(arg1, arg2): if arg1 != 'GOOD VALUE': exit('arg1 is bad') return __o

    1熱度

    3回答

    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

    12熱度

    2回答

    在RoR的所有教程中,我看到編碼器選擇使用Proc.new的情況,看起來它似乎不必要而且沒有吸引力。 例子,這裏是一個回調放置在模型中,使用一個Proc.new其他可能做同樣的事情: class Order < ActiveRecord::Base before_save :normalize_card_number, :if => Proc.new { |order| ord

    3熱度

    1回答

    內「迴歸」關鍵字的人能解釋以下 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

    4熱度

    3回答

    我有一個項目ActiveRecords,我正在嘗試使用一個塊爲它們中的每個設置默認值(「測試項目」)。 在此表達式中: list = {"type1", "type2", "type3", "type4", "..."} list.each { |name| @item.attributes["#{name}"] = "Test item"] } 值未設置。 我必須使用@item.attri

    3熱度

    1回答

    我想要創建一個實例方法,該方法根據以多態方式覆蓋的實現方式改變其行爲與另一個方法的返回值。 例如,假定以下類被擴展,並且pricing_rule應該根據產品而改變。 class Purchase def discount_price prices = [100, 200, 300] pricing_rule.call end protected

    6熱度

    2回答

    我想用方法定義一個類,缺少這些方法的類,然後讓後一類的對象從前一個類的實例中「學習」方法。 這是我的嘗試(Ruby 1.9.2) - 當我嘗試更改lambda綁定中的'self'的值時,它會中斷(在行中評論爲「BREAKS!」)。 如果你能弄清楚如何解決這個問題 - 我會着迷於找出答案。 class Skill attr_accessor :name attr_accesso