我试图在轨道上做一个简单的阻止,我得到一个错误,我很确定是基本的东西,但我现在失去了头脑,因为没有其他程序员在这里,我没有人分享我的想法。我有以下块:
@performances.where('creation >= ?', Date.yesterday).find_each do |per|
我遇到了更好的错误:
undefined method `row' for nil:NilClass
但是当我打开一个简单的rails控制台并进行查询时:
p = Performance.all.where('creation >= ?', Date.today)
我确实收到错误,任何人都知道为什么我在使用更大或相等时无法获得记录。
现在奇怪的是它完美运作如果我使用小于或等于而不是更大,那么如果我这样做:
@performances.where('creation <= ?', Date.yesterday).find_each do |per|
它运作良好但当然我不想要那些记录..
****************** EDIT **************************** **************
我从错误中获得了更多信息:
Started GET "/performances.xlsx" for 127.0.0.1 at 2015-08-11 17:42:15 -0600
由PerformancesController #index处理为XLSX 用户负载(0.9ms)SELECT&#34;用户&#34;。* FROM&#34;用户&#34;用户&#34;。&#34; id&#34; = $ 1 ORDER BY&#34;用户&#34;。&#34; id&#34; ASC限制1 [[&#34; id&#34;,1]] 性能负载(1.1ms)SELECT&#34;性能&#34;。* FROM&#34;性能&#34;在哪里(创作=&#39; 2015-08-10&#39;)ORDER BY&#34;表演&#34;。&#34; id&#34; ASC LIMIT 1000 岛屿载荷(0.5ms)SELECT&#34; islands&#34;。* FROM&#34; islands&#34;在哪里&#34;岛屿&#34;。&#34; id&#34; = $ 1 LIMIT 1 [[&#34; id&#34;,1]] 渲染表演/ index.xlsx.axlsx(17.4ms) 在30ms内完成500内部服务器错误(ActiveRecord:2.4ms)
NoMethodError - 未定义的方法row' for nil:NilClass:
axlsx (2.0.1) lib/axlsx/workbook/worksheet/worksheet.rb:698:in
范围&#39;
axlsx(2.0.1)lib / axlsx / workbook / worksheet / worksheet.rb:615:在`[]&#39;
我正在使用axlsx_rails
答案 0 :(得分:0)
********** ANSWER *************** ***********************
对于有这个问题的每个人来说很明显..我在excel中添加了一些代码到了一个不存在的行...只需删除它就会像错误一样完成它