Така че създавам приложение за проследяване на времето с помощта на Ruby On Rails и съхранявам времето като число, представляващо часове.
Тъй като всичко над 0,01 (36 секунди) часа е без значение, имам нужда само от 2 знака след десетичната запетая.
Използвам MySQL база данни с float като тип колона. Въпреки че това работи през повечето време, от време на време получавам грешка при изчисляването и закръглянето на плаващите стойности.
Направих известно проучване на моите възможности и виждам, че много хора препоръчват използването на BigDecimal. Тъй като използвам много персонализирани заявки към бази данни, използвайки изчисления, исках да знам как промяната на типа на колоната ще повлияе на това. Съхранява ли това като низ или yaml, или се поддържа първоначално от MySQL?
Или има еквивалентен начин за извършване на десетична аритметика с фиксирана запетая в Ruby / Rails.
Предполагам, че всеки метод ще изисква много рефакторинг, как мога да избегна това най-много?
Всяко прозрение се оценява.