Ruby NameError: Неинициализирана постоянна грешка

Езикът за програмиране с отворен код рубин е известен със своя ясен синтаксис и лекота на използване. Това не означава, че понякога няма да попаднете на съобщение за грешка. Едно от най-неприятните е изключението NameError Uninitialized Constant, тъй като има повече от една причина. Синтаксисът на изключението следва този формат:

За да отстраните неизправно кода, проучете го за възможните причини, изброени по-горе един по един. Ако откриете проблем, адресирайте го. Например, преминете през кода, търсейки разминаване в главни и малки букви при променливи и класове. Ако намерите такъв и го коригирате, вероятно вашият проблем е решен. Ако не е, продължете с другите възможни причини, като коригирате, докато вървите.

Ако класът, към който се позовавате в кода, е в друг модул, обърнете се към него с пълното му име така:

Изключения са как Ruby привлича вниманието ви към проблемите в кода. Когато се появи грешка в кода, изключение се "повдига" или "хвърля" и програмата се изключва по подразбиране.

Ruby публикува йерархия на изключенията с предварително дефинирани класове. NameErrors са в клас StandardError, заедно с RuntimeError, ThreadError, RangeError, ArgumentError и други. Този клас включва повечето нормални изключения, които срещате в типичните Ruby програми.