[英]How do I write a monkey patch for Ruby?
我正在使用Rails 3並收到如下錯誤:
undefined method `persisted?' for []:Array
我想進行修補以解決此問題。 首先:應該是什么樣子? 我對Ruby源代碼中Array類的嵌套了解甚少。 我會很感激的指導。
基本上,您只需要像編寫其他任何類一樣編寫類和函數,就可以將其添加到原始類定義中。
像這樣:
class Array
def persisted?
# Does it persist?
end
end
猴子修補看起來像這樣:
# patches/array.rb
class Array # Array is a top-level class
def persisted?
false # or your own implementation
end
end
# some/other/script.rb
require 'path/to/patches/array.rb'
my_array = [1, 2, 3]
puts my_array.persisted?
現在:問一個Array實例是否持久化可能意味着什么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.