仪表板:获取进度条小部件以使用我创建的作业文件时出现问题



我正在尝试使用其他人创建并发布在互联网上的进度条小部件(https://gist.github.com/mdirienzo/6716905)。
我创建了一个作业文件(Ruby),它从Excel文件中提取数据并将其发送到小部件。它将所有数据加载到我的变量中(我可以在 history.yml 文件中看到),但小部件显示为一个只有标题的空白矩形(根本没有条形)。

这是我的工作文件进度条.rb:

require 'date'
require 'roo'
require 'active_support'
require 'active_support/core_ext'

PROGRESS_FILENAME = 'progressbars.xlsx'
SCHEDULER.every '3s', :first_in => '1s' do
  progress = []
  progress_report = Roo::Excelx.new(PROGRESS_FILENAME)
  (2..progress_report.last_row).each do |row|
    name = progress_report.cell(row, 1)
    name.sub!(/(S+),s*(S+).*/, '2 1')
    prog = progress_report.cell(row, 4)
    progress.push({name: name, progress: prog})
  end
  # get next 10 timeline
  progress = progress.sort{|a, b| a[:progress] <=> b[:progress]}[0..9]
  # assemble data to send to client
  progress_data = []
  progress.each do |progress|
    progress_data.push({
      'label' => progress[:name], 
      'value' => progress[:progress].to_i
    })
  end
  send_event('progress', items: progress_data)
end

数据正在正确发送,但小部件需要不同的名称。在您链接的站点中,发送事件应类似于send_event( 'progress_bars', {title: "", progress_items: []}因此请将发送事件更改为 send_event('progress', progress_items: progress_data)

最新更新