monkeypatching

    2熱度

    2回答

    道歉爲這個問題的遞歸性質,但chosen answer對SO的問題讓我質疑我對反思的理解。 我認爲反思主要是關於在程序運行時查詢程序的內部事件。此響應中給出的示例修補了Ruby的內置Integer類。 這不是更像是函數重載/繼承而不是運行時修改嗎? 重新開課真的是反思的一個例子嗎?

    1熱度

    5回答

    我感興趣的人會如何得到這個工作去: me = "this is a string" class << me alias :old<< :<< def <<(text) old<<(text) puts "appended #{text}" end end 我想,當某樣東西附加到me變量,對象將使用重新定義的方法。 如果我嘗試運行這個,我得到

    6熱度

    3回答

    當我讀野獸的源代碼,我發現這樣的大量的代碼: <%= 'Password'[:password_title] %> 看起來爲[]的方法的調用與符號作爲輸入參數爲字符串對我來說,但我沒有在ruby API中找到這種類型的String []方法的參數。這是什麼意思? 在此先感謝。

    4熱度

    5回答

    我最近開始在業餘時間用Django試驗一些Web應用程序。在爲數據模型設計數據模型時,我遇到了使用繼承來定義網站用戶或者使用已經由框架提供的用戶類稱爲猴子補丁的技術的兩難困境。 我試圖藉助於增加一個字段(具有限定的我的所有型號等沒有錯誤之後,根據python manage.py validate): User.add_to_class('location', models.CharField(ma

    0熱度

    2回答

    我有一個寶石: # in /Library/Ruby/Gems/1.8/gems/my_gem-1.0.0/lib/my_gem.rb module MyGem def do_stuff .. end end 而且我裝它的Rails: # in [rails_root]/config/environment.rb: config.gem 'my_gem',

    8熱度

    5回答

    這是更具體的問題,然後是語言特定的,但我在使用python ncurses模塊時遇到了這個問題。我需要顯示區域設置字符並將它們識別爲字符,所以我只是快速地從curses模塊中修改了一些函數/方法。 這就是我稱之爲快速和醜陋的解決方案,即使它有效。這些變化相對較小,所以我希望我沒有搞砸任何事情。我的計劃是找到另一個解決方案,但看到它的工作和運作良好,你知道它是怎麼回事,我去了我不得不面對的其他問題,

    1熱度

    4回答

    我正在編寫一個Django應用程序,並且我希望在本地創建帳戶時使用Provisioning API在我們的Google Apps託管電子郵件上創建一個帳戶。 我會單獨使用的信號,但因爲我想密碼跨站點同步,我一直在使用的包裝創建谷歌帳戶,並分別更新密碼monkeypatched User.objects.create_user和User.set_password。 Monkeypatching似乎被

    6熱度

    1回答

    假設我有一個Python類,我想添加一個額外的屬性。 有 import path.MyClass MyClass.foo = bar ,並使用類似之間的任何差別: import path.MyClass setattr(MyClass, 'foo', bar) ? 如果不是,爲什麼人們似乎做第二而不是第一? (這裏http://concisionandconcinnity.blogsp

    1熱度

    3回答

    任何人都可以告訴我它是否可以重新聲明IronPython中的C#類?如果我有一個C#類,我是否可以從IronPython中修補它?

    1熱度

    1回答

    在Rails應用程序中將簡單修補程序應用於Ruby gem的最佳方式是什麼? 是否可以保持原始寶石代碼不變?