当我正在测试时,我真的厌倦了在我的控制台中键入my_ar_object.errors.full_messages ...
所以,我想定义一下:
module ActiveRecord
class Base
def err
errors.full_messages
end
end
end
在我的〜/ .irbrc中,因此它是脚本/控制台独有的。
我不想在某些rails初始化程序中定义它,因为我不相信它属于rails项目(这是一个irb帮助程序)
问题是,当我这样做时,会发生这种情况:
/.../gems/rails-2.3.5/lib/initializer.rb:437:in `initialize_database':NoMethodError: undefined method `configurations=' for ActiveRecord::Base:Class
我是如何做到这一点的?
答案 0 :(得分:2)
在定义错误方法之前,您是否在.irbrc中加载了ActiveRecord?尝试添加
require 'active_record'
或
require 'rubygems'
gem 'activerecord', '2.3.5' # or whatever version you use
在定义错误方法之前。
另一个提示:irb在当前目录和你的主目录中查找.irbrc文件。因此,您还可以在项目根目录中创建特定于项目的.irbrc。这样,您就不必将ActiveRecord引入默认的irb配置,因为它是一个相当大的依赖。