简单的日期过滤查询

时间:2015-08-11 23:40:47

标签: ruby-on-rails ruby ruby-on-rails-4 activerecord

我试图在轨道上做一个简单的阻止,我得到一个错误,我很确定是基本的东西,但我现在失去了头脑,因为没有其他程序员在这里,我没有人分享我的想法。我有以下块:

 @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

1 个答案:

答案 0 :(得分:0)

********** ANSWER *************** ***********************

对于有这个问题的每个人来说很明显..我在excel中添加了一些代码到了一个不存在的行...只需删除它就会像错误一样完成它