我正在构建一个应用程序,它将存储大量的"标记"关于人(体重,身高,血压等),并且由于用户对测量单位的测量单位都有不同的期望,我需要在智能中解决UOM的问题。办法。我想知道的是,如何就如何最好地存储这些信息达成共识。我考虑的示例如下(在每种情况下,假设前端捕获标记和与捕获相关联的UOM):
对我而言,除了可能产生的刺耳的用户体验之外,精确度损失并不重要。想象一下,如果用户输入160磅,然后将其报告为159.99lbs;这将是非常令人不安的,并会导致人们不相信系统。我怀疑在大多数转换中虽然我能够返回相同的数字而不需要过多地增加DB中的精度。这种感觉只是我阳光明媚的乐观主义,而不是我测试过的东西。
答案 0 :(得分:1)
存储两者感觉都是个坏主意。您必须确保这些值保持一致并且违反DRY(don't repeat yourself)原则。
您对存储空间和演示文稿感到困惑。如果您要存储重量,那么您应该存储为一个表示,然后以用户所需的任何表示形式出现(例如千克,吨,吨,克,石头,磅,盎司等)。
你可以存储单位以及幅度(例如10公斤,4石头等),但这会使比较成问题,例如对小于2盎司的实体的SQL查询必须执行转换。我认为在演示时执行UOM转换是一种一致且直观的解决方案。