【发布时间】:2016-08-25 05:45:36
【问题描述】:
我正在尝试生成一个包含一列 URL 的工作表,我想将这些 URL 显示为超链接,而不仅仅是文本。我找到的所有示例都显示以这种方式添加超链接:
sheet.add_hyperlink :location => 'https://github.com/randym/axlsx', :ref => sheet.rows.first.cells.first
如果您只是想在页面上的某处放置一个超链接,则此方法有效,但我正在迭代一个集合,并且每一行在特定列中都有一个链接,具体取决于存在哪些列。
我尝试了以下操作:
@items.each do |item|
row = []
idx = 0
...
idx += 1
row << item.address
url_idx = idx
...
r = sheet.add_row row
sheet.add_hyperlink :location => item.address, :ref => r[url_idx]
end
但这只是导致错误:
undefined method `[]' for #<Axlsx::Row:0x007fa0024fb600>
这看起来确实比它应该的要复杂,所以我认为我遗漏了一些明显的东西。
【问题讨论】:
-
如果我猜对了,那么
sheet.add_hyperlink :location => 'https://github.com/randym/axlsx', :ref => 'R#$idx'should do the job...(对于 R 列)...但我对语法一无所知:P -
你最后是怎么做到的?
标签: ruby-on-rails excel hyperlink axlsx