El lenguaje de programación de código abierto Ruby es conocido por su sintaxis clara y facilidad de uso. Eso no significa que ocasionalmente no te encuentres con un mensaje de error. Una de las más molestas es la excepción constante de NameError sin inicializar porque tiene más de una causa. La sintaxis de la excepción sigue este formato:
NameError: constante no inicializada Algo
o
NameError: Objeto constante no inicializado :: Algo
(donde varios nombres de clase están en lugar de Alguna cosa)
El error constante no inicializado es una variación de una clase de excepción NameError normal. Tiene varias causas posibles..
Para solucionar su código, examínelo para ver las posibles causas enumeradas anteriormente, una por vez. Si encuentra un problema, resuélvalo. Por ejemplo, revise el código buscando una discrepancia en el uso de mayúsculas y minúsculas en variables y clases. Si encuentra uno y lo corrige, su problema probablemente esté resuelto. Si no es así, continúe con las otras causas posibles, solucionando a medida que avanza.
Si la clase a la que se refiere en el código está en otro módulo, consúltelo con su nombre completo de esta manera:
#! / usr / bin / env rubymodule MyModule class MyClass; endendc = MyModule :: MyClass.new
Las excepciones son cómo Ruby llama su atención sobre los problemas en el código. Cuando se encuentra un error en el código, una excepción se "activa" o "arroja" y el programa se cierra por defecto.
Ruby publica una jerarquía de excepciones con clases predefinidas. NameErrors están en la clase StandardError, junto con RuntimeError, ThreadError, RangeError, ArgumentError y otros. Esta clase incluye la mayoría de las excepciones normales que se encuentran en los programas típicos de Ruby..