2010-10-13 32 views
1

J'ai une application qui interagit avec ActiveResource à partir d'un système dont je n'ai aucun contrôle.Une façon de faire taire "warning: Object # type est obsolète; use Object # class"

Il arrive que le système m'envoie un flux JSON et l'un des champs est appelé "type" et, chaque fois que ce modèle est sérialisé, je reçois cette mauvaise exception. Comme il s'agit d'une application CLI, c'est très agaçant.

Y a-t-il un moyen de faire taire cet avertissement?

Répondre

3

Here's one way to silence warnings dans certaines parties du code:

def silently(&block) 
    warn_level = $VERBOSE 
    $VERBOSE = nil 
    begin 
    result = block.call 
    ensure 
    $VERBOSE = warn_level 
    end 
    result 
end 

silently do 
    #do your thing 
end 
+0

Ce totalement rochers! Merci - http://pastie.org/1218949 – kolrie

+0

@kolrie Heureux d'aider :) – Skilldrick

+2

Devrait retourner le niveau $ VERBOSE à avant d'être fait dans un bloc 'Ensure '? –