aktive Datensatz Helfer definierten in ~ / .irbrc
-
22-09-2019 - |
Frage
Ich bin wirklich müde von der Eingabe my_ar_object.errors.full_messages in meiner Konsole, wenn ich Dinge testen bin ...
Also, ich möchte dies definieren:
module ActiveRecord
class Base
def err
errors.full_messages
end
end
end
in meiner ~ / .irbrc, so dass es zu Skript / Konsole exklusiv ist.
Ich will nicht, dass es in einigen Schienen definieren initializer da ich nicht glaube, es gehört in den Projektschienen (dies ist ein irb Helfer)
Das Problem ist, wenn ich das tun, geschieht dies:
/.../gems/rails-2.3.5/lib/initializer.rb:437:in `initialize_database':NoMethodError: undefined method `configurations=' for ActiveRecord::Base:Class
Irgendwelche Ideen, wie ich könnte diese Arbeit machen?
Lösung
Haben laden Sie Active in Ihrem .irbrc vor der err Methode definieren? Versuchen Sie,
require 'active_record'
oder
require 'rubygems'
gem 'activerecord', '2.3.5' # or whatever version you use
, bevor die Definition der err Methode.
Und noch ein Hinweis: irb sucht nach einer .irbrc Datei im aktuellen Verzeichnis und in Ihrem Home-Verzeichnis. So könnte man auch eine projektspezifische .irbrc in Ihrem Projekt Stammverzeichnis Handwerk. Auf diese Weise müssen Sie nicht Active auf dem Standard irb Config einzuführen, da es eine ziemlich heftige Abhängigkeit ist.