3

我收到奇怪的错误

ActionView::Template::Error (wrong argument type nil (expected Fixnum)):

在这条线上:

<%= (!attach.file_size.nil?) ? "(#{number_to_human_size(attach.file_size.to_i).to_s})": ""  %>

这是我的代码:

<% if !pr.attachments.empty? %>
<ul class="attached_files">
  <% pr.attachments.each do |attach| %>
    <li><a href="<%= attach.path_url%> " target="_blank"><%= attach.path_identifier%></a> 
    <%= (!attach.file_size.nil?) ? "(#{number_to_human_size(attach.file_size.to_i).to_s})": ""  %>
    </li>
  <%end%>
</ul>
<% end %>

我不明白问题出在哪里。请帮帮我。谢谢!

4

1 回答 1

2

什么语言环境?如果不是英语语言环境,请尝试一个。

听起来很像这个错误,其中调用number_to_human_size最终调用BigDecimal.new(the_number.to_s).round(...).to_f,并且round()由于语言环境问题而失败。生成的异常与您的错误完全匹配("wrong argument type nil (expected Fixnum)")。

于 2012-04-19T18:41:55.430 回答