Наш стек в настоящее время: React SPA / Apollo / GraphQL / Rails / PostgreSQL.
У нас есть веб-форма с вводом числа, который может (или не может) использоваться для ввода десятичных значений (динамический / пользовательский-созданная форма).
Мы хотим, чтобы форма была снисходительной (она имеет функцию автосохранения).Если пользователь вводит ,3
или 17,
, это считается допустимым числовым значением.Но не слишком снисходительно, число должно анализироваться как число с плавающей точкой и иметь возможность отображаться на графиках ...
Кроме того, когда пользователь снова посещает форму, мы хотим убедиться, что ввод числа осуществляется с помощьюто же самое значение, которое он набрал изначально (я имею в виду, ,3
не становится волшебным 0,3
)
Я хотел бы знать, для нашего стека, как сериализовать (отправка в виде полезной нагрузки GraphQL) и сохранить(в PostgreSQL) и манипулировать (в JS / Ruby) таким числом, не теряя начальное значение пользовательского ввода.
Я думаю, что было бы проще отправить / сохранить строку, если онапроверено, что это может быть проанализировано.
Просто интересно, есть ли "правильное" решение, например, использование числовых библиотек, пользовательский скалярный тип GraphQL, десятичный тип SQL ... что мне кажется сложным, кто-нибудь делал что-то подобное раньше?