.sum 方法中的乘法符号 Rails 给出错误
multiply symbol in a .sum method Rails gives errors
我正在使用 chartkicks 创建此柱形图。我几乎陷入困境,别无选择。
<div class="col-md-3 chart-box">
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(:transport_flight_km) }} %>
</div>
问题是我必须乘以
:transport_flight_km
和
* 0.1404
暂时将其显示为一栏(稍后会添加更多)。
我无法进行此乘法运算,rails 根据我放置计算的位置向我抛出各种错误。
如果我这样做的话
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(:transport_flight_km * 0.1404) }} %>
Rails 抛出这个错误,这是有道理的
undefined method `*' for :transport_flight_km:Symbol
如果我这样做:
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(0.1404 * :transport_flight_km )}} %>
Rails 给我这个错误
:transport_flight_km can't be coerced into Float
如果我这样做
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum("0.1404" * :transport_flight_km )}} %>
我得到这个错误:
no implicit conversion of Symbol into Integer
谁能告诉我如何在这行代码中进行计算?
提前致谢
Daði
把它变成一个字符串:
.sum("transport_flight_km * 0.1404")
我正在使用 chartkicks 创建此柱形图。我几乎陷入困境,别无选择。
<div class="col-md-3 chart-box">
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(:transport_flight_km) }} %>
</div>
问题是我必须乘以
:transport_flight_km
和
* 0.1404
暂时将其显示为一栏(稍后会添加更多)。 我无法进行此乘法运算,rails 根据我放置计算的位置向我抛出各种错误。
如果我这样做的话
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(:transport_flight_km * 0.1404) }} %>
Rails 抛出这个错误,这是有道理的
undefined method `*' for :transport_flight_km:Symbol
如果我这样做:
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum(0.1404 * :transport_flight_km )}} %>
Rails 给我这个错误
:transport_flight_km can't be coerced into Float
如果我这样做
<%= column_chart current_user.transports.map{|t|
{ name: "Co2 flight", data: current_user.transports.group_by_year(:created_at).sum("0.1404" * :transport_flight_km )}} %>
我得到这个错误:
no implicit conversion of Symbol into Integer
谁能告诉我如何在这行代码中进行计算?
提前致谢 Daði
把它变成一个字符串:
.sum("transport_flight_km * 0.1404")