我有一个页面,我想显示给定一周数据库中的所有条目。数据库中的每个条目都有一个 :entrydate 字段,其中包含条目的日期。
在 /config/routes.rb 中:
match "reports/*date" => "reports#index", :defaults => { :date => DateTime.now.strftime('%m/%d/%Y') }
在 /app/controllers/reports_controller.rb 中:
def index
@reports = Report.where(:entrydate => Date.strptime(params[:date], '%m/%d/%Y').beginning_of_week..Date.strptime(params[:date], '%m/%d/%Y').end_of_week)
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @reports }
format.js
end
end
但是,当我尝试运行页面 localhost:3000/reports 时,出现错误:
can't dup NilClass
/app/jruby-1.6.5.1/lib/ruby/1.8/date/format.rb:599:in `_strptime'
/app/jruby-1.6.5.1/lib/ruby/1.8/date.rb:979:in `strptime'
app/controllers/reports_controller.rb:7:in `index'
如果我输入诸如 localhost:3000/reports/10/29/2012 之类的日期,它工作正常。