Uno sviluppatore ha scritto questo metodo e causando un Encoding :: UndefinedConversionError ("\ xE2" da ASCII Da -8BIT a UTF-8): errore.Encoding :: UndefinedConversionError (" xE2" da ASCII-8BIT a UTF-8): errore nell'app basata su ROR + MongoDB
Questo errore si verifica solo in modo casuale, quindi i dati in entrata sono originali nel campo DB è ciò che sta causando il problema. Ma dal momento che non ho alcun controllo su questo, cosa posso mettere nel seguente metodo per risolvere questo problema dati così cattivi non causano problemi?
def scrub_string(input, line_break = ' ')
begin
input.an_address.delete("^\u{0000}-\u{007F}").gsub("\n", line_break)
rescue
input || ''
end
end
Questo lavoro funzionerà?
input = input.encode('utf-8', :invalid => :replace, :undef => :replace, :replace => '_')
si prega di inviare l'intero backtrace dell'errore. –