我在用 railtie 写一个小插件,在这个插件里我希望能给应用里的一个 user model 添加一些属性,在我的插件里有一个文件负责这个工作:
User.class_eval do
attr_accessible :group
end
然后是 railtie
module MyGem
class Railtie < Rails::Railtie
config.to_prepare do
require "ext/user"
puts "require the patch"
end
end
end
然后在应用 Gemfile 里我加上这个 gem
gem 'mygem', :path => '../mygem'
打开 rails server 的时候会看到 require the patch
,但是只有这一次,官方文档里写的是在开发模式下config.to_prepare
,会每次 request 都调用的,可是我这里不是。我是在开发模式下,config.cache_classes = false
。大家给看看有什么问题吗?