参数超出范围Rails 4和bootstrap3-datetimepicker-rails

 job2672488 发布于 2023-01-16 14:36

我正在使用bootstrap3-datetimepicker-rails gem让用户在我的应用程序中存储scheduled_datea WorkOrder('DateTime'属性),但是argument out of range当用户提交表单来创建时,我收到错误WorkOrder,日期是与用户弹出打开编辑屏幕时选择的内容非常不同.有趣的是它曾经工作,但我不知道什么代码可以改变来打破它.

我添加了所需的依赖项并在我的CSS/JS文件中包含了正确的指令:

gem 'momentjs-rails', '~> 2.5.0'
gem 'bootstrap3-datetimepicker-rails', '~> 3.0.0'

据我所知,我的代码看起来与文档中的示例相同.这是我的表格的片段:

  
<%= f.label :scheduled_date %>
<%= f.text_field :scheduled_date, class: 'form-control input-lg', id: "service_date_picker" %>

编辑(忘了添加控制器代码 - 超级简单):

work_orders_controller.rb

def create
  @work_order = WorkOrder.new(work_order_params)

  ... [it errors on the line above]
end

我的参数白名单:

def work_order_params
  params.require(:work_order).permit(:caller_name, :brief_job_details, :contract_price, :quoted_by, :job_description, :scheduled_date, :time_materials_details, :sheduled_time, :contact_name, :payment_method, :notes, :customer_id, :job_site_id)
end

以及argument out of range在保存表单时给出错误的参数示例:

work_orders_attributes"=>{"0"=>{"caller_name"=>"Justin", "time_materials_details"=>"", "contract_price"=>"", "quoted_by"=>"", "payment_method"=>"", "job_description"=>"", "scheduled_date"=>"05/23/2014 1:28 PM", "notes"=>""}}

与我的新客户表单内部的customers_controller.rb嵌套表单相同WorkOrder(该表单上的其他内容完美运行):

def create
  @customer = Customer.new(customer_params)

  ... [errors above]
end

如果日期和时间在24小时之内,则可以正确保存日期和时间,但即使正确保存,当我进行编辑时,日期在文本字段中显示完全奇怪且未格式化WorkOrder.例如:

当我从日期选择器中选择日期时: 05/06/2014 10:28 AM

当我编辑WorkOrder:2014-06-05 10:28:00.000000

有任何想法吗?任何偏爱我是否应该作出这样的领域Date,TimeDateTime(目前)?现在,我们正在中央时区工作,但情况并非总是如此.

提前感谢您指出我正确的方向!

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有