aides record actifs définis dans ~ / .irbrc
-
22-09-2019 - |
Question
Je suis vraiment fatigué de taper my_ar_object.errors.full_messages dans ma console quand je suis les choses ... test
Alors, je veux définir ceci:
module ActiveRecord
class Base
def err
errors.full_messages
end
end
end
dans mon ~ / .irbrc afin qu'il soit exclusif de script / console.
Je ne veux pas définir dans certains rails initialiseur puisque je ne crois pas qu'il appartient au projet de rails (ce qui est une aide RIR)
Le problème est, quand je fais ça, cela se produit:
/.../gems/rails-2.3.5/lib/initializer.rb:437:in `initialize_database':NoMethodError: undefined method `configurations=' for ActiveRecord::Base:Class
Toutes les idées comment je pourrais faire ce travail?
La solution
Avez-vous chargez ActiveRecord dans votre .irbrc avant de définir la err méthode? Essayez d'ajouter
require 'active_record'
ou
require 'rubygems'
gem 'activerecord', '2.3.5' # or whatever version you use
avant de définir la méthode err .
Et un autre indice: regards RIR pour un fichier .irbrc dans le répertoire courant et dans votre répertoire personnel. Donc, vous pouvez aussi concevoir un .irbrc spécifique au projet dans votre répertoire racine du projet. De cette façon, vous n'avez pas à introduire ActiveRecord à votre configuration par défaut irb car il est une dépendance plutôt lourde.