我需要覆蓋寶石「omnicontacts」的方法「email_to_name」,因爲它不適用於Ruby 1.8.7。 我有一個名爲正則表達式的錯誤在這種方法覆蓋寶石模塊的方法
lib/omnicontacts/parse_utils.rb:32: undefined (?...) sequence: /(?<first>[a-z|A-Z]+)[\.|_](?<last>[a-z|A-Z]+)/ (SyntaxError)
這種方法位於模塊ParseUtils
module OmniContacts
module ParseUtils
def email_to_name username_or_email
...
end
end
end
然後,它需要在其他模塊
require "omnicontacts/parse_utils"
require "omnicontacts/middleware/oauth2"
require "json"
module OmniContacts
module Importer
class Gmail < Middleware::OAuth2
include ParseUtils
end
end
end
我試圖重寫此方法,但它不起作用:
#config/initializer/omnicontacts.rb
require "omnicontacts"
module OmniContacts
module ParseUtils
def email_to_name username_or_email
p "test"
end
end
end
module OmniContacts
module Importer
class Gmail
module ParseUtils
def email_to_name username_or_email
p "test"
end
end
end
end
end
ActionController::Dispatcher.middleware.use OmniContacts::Builder do
importer :gmail, "test", "test", {:redirect_path => "/contacts/gmail/callback"}
importer :yahoo, "test", "test", {:callback_path => '/contacts/yahoo/callback'}
end
我使用導軌2和紅寶石1.8.7
你把你的文件與猴子補丁放在哪裏? –
我需要全文後在初始化程序中放入 –
您是否重新啓動了您的應用程序? –