我的项目里由于历史原因(除了这还能有什么原因),采用的是gb2312编码,因此在Object中添加了gbk和utf8两个方法以进行编码转换。现在我写了一个object.rb文件,定义了这两个方法。我现在的困难是,到底应该在项目的那个文件中加载这个object定义才合适?我现在的做法是,在config/environment.rb中使用require加载object.rb,就可以达到效果了。但是在环境文件中这样实现是否合适?有没有更合适的方法?谢谢!
[b]问题补充:[/b]
感谢各位提供帮助,我决定将object放到lib下。但是lib下的文件会自动加载吗?如果不加载,我怎么做才能让rails加载并仅加载一次?
[b]问题补充:[/b]
忘了说明,我使用的是rails 1.2.3, 并且本着能用就不改的原则,项目现阶段不允许迁移到2.x版本,所以大概没办法使用config/initializers。
直接修改object也很有用处,这样代码就很灵活,可以在任何地方使用,比如说view上。当然完美的方案是只在model上处理编码问题,但是考虑到遗留代码,这是个不错的方案。