【发布时间】:2018-12-12 16:31:25
【问题描述】:
我正在发送几个用于打印 pdf 票证的参数
Parameters: {"utf8"=>"✓", "list"=>{"client_0801541"=>"0801541", "client_0801554"=>"0801554", "client_0801554"=>"0801554"}, "subaction"=>"print selected clients"}
我需要在不同的页面上打印每个客户端,为此我在显示客户端代码的末尾使用 start_new_page,但在最后一个客户端留下空白页之后。我怎样才能做到这一点,以便为每个客户端验证它是否是数组的最后一个?我尝试了以下方法:
def client
@client.each do |(c,client_id)|
draw_text "#{client_id}", :at => [0,22], :size => 5, :style => :bold
start_new_page unless client_id == @client.map{|e|[e.c, e.client_id]}.client_id.last
end
end
【问题讨论】:
-
尽量避免无缘无故引用变量。这里
"#{client_id}"可以是client_id。如果您出于某种原因需要将其强制转换为字符串,client_id.to_s会清楚说明您在做什么。
标签: ruby-on-rails ruby ruby-on-rails-4