我想在 gem 中的方法之一中添加一些自定义代码。在 Rails 2.3.8 中,我在 config/initializers 目录下添加了一个 .rb 文件,一切正常。
自从转移到 Rail3 后,以前的工作不再有效。我曾尝试在 config/initializers 下和/lib 下添加一个 mongoid_slug.rb 并在 application.rb 中 auto_load/lib 路径。两者都不起作用。
在 mongoid_slug.rb 里面我试过:
module Mongoid
module Slug
module ClassMethods
def find_unique_slug
#mycode
end
end
end
end
和
Mongoid::Slug::ClassMethods.module_eval do
def find_unique_slug
#mycode
end
end
尽管如此,两者都失败了。任何人都可以提供一些关于如何在 Rails3 中修补 gem 的提示?
谢谢!
最佳答案
这对我有用,
module Mongoid
module Slug
module ClassMethods
def find_unique_slug
#mycode
end
end
end
end
其他问题,我认为在包含此文件或调用此方法时
应该包括:
包括 Abt::I18n
在 ApplicationHelper 或其他地方
关于gem - 导轨 3 : How to override a method in a gem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5592720/