【问题标题】:How to properly generate model table for float with specific precision and scale?如何正确生成具有特定精度和比例的浮点模型表?
【发布时间】:2016-04-05 08:02:37
【问题描述】:

我想生成与float 数据类型类似的decimal 表。

add_column :table_name, :lat, :decimal, {:precision=>10, :scale=>6}

我该如何正确地做到这一点? rails generate model 的终端命令是什么样的

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    正确的是 'price:decimal{5,2}' 或 price:decimal{5-2}

    rails generate migration AddDetailsToProducts 'price:decimal{5,2}'
    

    正如here指出的那样

    【讨论】:

      【解决方案2】:

      十进制优于浮点数。

      您可以在这里找到原因:https://en.wikipedia.org/wiki/IEEE_floating_point

      在另一个 SO 帖子中:

      Float vs Decimal in ActiveRecord

      所以对我来说.. 你的第一种方法是正确的。精确使用小数。

      顺便说一句,我认为 rails 不支持 :float 和 :precision。

      【讨论】:

      • 这个答案很不完整。
      猜你喜欢
      • 1970-01-01
      • 2021-04-05
      • 2023-03-17
      • 2012-03-27
      • 1970-01-01
      • 2015-05-17
      • 1970-01-01
      • 2016-02-22
      • 1970-01-01
      相关资源
      最近更新 更多