javascript - 整数/十进制用户输入 : how to serialize/store the value

标签 javascript ruby postgresql graphql apollo

我们的堆栈目前是:React SPA/Apollo/GraphQL/Rails/PostgreSQL。

我们有一个带有数字输入的网络表单,可能(或不)用于输入十进制值(动态/用户创建的表单)。

我们希望表单宽松(它具有自动保存功能)。如果用户键入 ,317,,则认为这是一个有效的数字值。但不要太宽松,数字应该可以解析为 float 并能够显示在图形中......

此外,当用户再次访问表单时,我们要确保用他最初键入的完全相同的值初始化数字输入(我的意思是,,3 不会神奇地变成 0,3)

我想知道,对于我们的堆栈,如何在不丢失初始用户输入值的情况下序列化(作为 GraphQL 负载发送)和存储(在 PostgreSQL 中)和操作(在 JS/Ruby 中)这样的数字。


我认为发送/存储字符串会更简单,只要验证它可以被解析即可。

只是想知道是否有一个“合适的”解决方案,例如使用数字库、自定义 GraphQL 标量类型、十进制 SQL 类型……这对我来说似乎很复杂,以前有人做过类似的事情吗?

最佳答案

创建两个字段。一个用于用户输入,另一个用于解析值。我认为这对于任何堆栈都不会有所不同。

挑战在于如何向用户展示您如何理解输入的值。这可以通过在文本字段下使用解析值的提示来解决。

关于javascript - 整数/十进制用户输入 : how to serialize/store the value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51029255/

相关文章:

ruby - 希望正则表达式在第一次出现 "."和 ";"时停止

sql - 如何优化这个选择

postgresql - Pentaho 数据集成 (PDI) : Inserting Boolean values from source to target

javascript - 在 JavaScript 中使用 "address string"从 json 对象获取字段

javascript - 如何在useEffect中使用更新的值

ruby - 将原始数据类型的引用传递给 ruby​​ 中的函数

java - Ubuntu,Java,找不到适合 jdbc :postgresql 的驱动程序

javascript - 库 parallax.js

javascript - 为什么这没有被触发?

ruby - 了解默认参数值