虾表:块没有执行

时间:2010-12-13 14:51:18

标签: ruby-on-rails prawn

我的rails / prawn代码遇到了一个非常奇怪的问题。

我正在生成一个表格并尝试使用以下代码更改第一行的字体样式:

pdf.table(data) do
    rows.first.style(:font_style => :bold)
end

生成表,但块内没有任何内容被执行。我已经尝试在块中放置一个调试器语句,但它甚至都没有。根据Googling发现的建议,我尝试添加一个块参数,例如:

pdf.table(data) do |t|
    t.rows.first.style(:font_style => :bold)
end

以及其他几个变种,但无济于事。我通过更改config / environments.rb尝试了各种配置,但这也没有用。具体来说,我的问题是,为什么块内部的代码不执行?

我非常感谢任何人可能提出的建议。

2 个答案:

答案 0 :(得分:3)

我们在对虾中有类似的问题。我认为语法已经从很多指南中改变了,但我真的不记得了 - 它还有一段时间了!这就是我们最终在行中设计样式的方式:

pdf.table(data) do
  style row(0), :style => :bold
end

答案 1 :(得分:0)

两个

style(row(0)) {|x| x.font_style = :bold}

style row(0), :font_style => :bold

适合我。您的

style => :bold

不起作用。顺便说一句:虾(0.12.0)在这里。