【发布时间】:2016-03-07 23:13:27
【问题描述】:
我正在使用 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
暂时将其显示为一列(稍后将添加更多内容)。 我无法进行这种乘法运算,并且轨道会根据我的计算位置向我抛出各种错误。
如果我这样做
<%= 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
谁能告诉我如何在这行代码中进行计算?
提前致谢 大堤
【问题讨论】:
-
调用一个返回数值而不是使用该符号的方法。你不能乘以一个符号。
标签: ruby-on-rails ruby charts chartkick