在这里,用户通过选择开始日期和结束日期来提交某个时间段的时间表。这些参数被分配给 timesheet_params 然后它被传递给时间表模型。
在为特定日期构建时间表时出现此错误:
开始 GET "/users/2/timesheets/build?start_date=06/08/2013&end_date=06/11/2013" for 127.0.0.1 在 Tue Jun 11 23:24:23 +0530 2013 由 TimesheetsController#build as / 参数处理: {"end_date"=>"06/11/2013", "start_date"=>"06/08/2013", "user_id"=>"2"} [1m[36mUser Load (0.1ms)[0m [1mSELECT
users
.*users
从哪里来users
。id
= 2 LIMIT 1[0m 在 3ms 内完成 500 内部服务器错误NoMethodError(未定义
stringify_keys' for #<Array:0xb23ed8f4>):app/controllers/timesheets_controller.rb:23:in
的新方法'app/controllers/timesheets_controller.rb:23:in `build'
我正在使用的代码是:
// time sheet build method //
def build
@user = current_user
timesheet_params = params.select{|k,v| ["start_date", "end_date", "user_id"].include?(k) }
@timesheet = Timesheet.new(timesheet_params)
@timesheet.placement = @user.active_assignment
if @timesheet.valid?
if @timesheet.timesheet_days.blank?
build_timesheet_days
end
else
render :status => 500 and return
end
end