【问题标题】:in rails erb file i want to display an output as a decimal only at one place where actually it is showing as a float value在rails erb文件中,我只想在一个实际显示为浮点值的地方将输出显示为小数
【发布时间】:2016-01-27 18:31:37
【问题描述】:
<div class='summary' align="justify" style='vertical-align: top;'>
  <div>
    {{:stats.tot_fte}} Employees Assigned 
    &emsp; {{:stats.tot_fte_effort}} Total Effort
  </div>
  <div>
    {{:stats.tot_users}} Users Assigned 
    &emsp;&emsp;&emsp; {{:stats.tot_user_effort}} Total Effort
  </div> 
</div>

这是我编写的代码,用于将总工作量显示为输出,我在其他地方计算总工作量,当我将其用于其他计算时,它应该始终是浮点值。但是在这里显示时,我希望它是小数点后有两个数字的十进制值。请帮助我完成此操作,因为我是初学者。 输出如下,

已分配 340 名员工   340.89666666666665 总工作量

453 个用户分配了     452.6066666666666 总工作量

我希望总工作量仅在此处显示为十进制值。

【问题讨论】:

    标签: html ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 erb


    【解决方案1】:

    由于您使用的是 Rails,它在 ActionView 中带有一个数字助手。你可以使用number_with_precision(number, options = {})

    例如:

    number_with_precision 123.456, precision: 2
    

    【讨论】:

      【解决方案2】:

      老派:

      sprintf('%.2f', number)
      

      其他:

      (340.89666666666665).round(2)
      

      例子:

      {{:stats.tot_user_effort.round(2)}} Total Effort
      {{sprintf('%.2f', :stats.tot_user_effort)}} Total Effort
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-19
        • 1970-01-01
        • 2018-02-08
        • 2011-03-10
        • 1970-01-01
        相关资源
        最近更新 更多