2016-02-26 1 views
2

Lorsque vous essayez de créer un nouvel enregistreur de rubis:joyau Ruby est prépondérant bibliothèque standard

logger = Logger.new('my.log')

Je reçois une erreur:

NoMethodError: undefined method `new' for HTTParty::Logger:Module 

Création de l'enregistreur de la marche console Rails bien . Lorsque vous essayez de le créer à partir de la classe, c'est quand il y a l'erreur. Il semble que HTTParty interfère avec cela. Comment puis-je spécifier que je souhaite utiliser le stdlib Logger au lieu de la gem HTTParty's Logger?

Répondre

1

Si vous souhaitez obtenir la constante dans l'espace de noms 'root', vous pouvez utiliser l'opérateur ::, comme ceci:

logger = ::Logger.new('my.log') 
+0

Très cool! Cela fonctionne sans l'avertissement 'warning: toplevel constant Logger référencé par Class :: Logger' – singularity