Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 尝试将rails时间默认值选择为空值_Ruby On Rails_Ruby_Forms_Ruby On Rails 4_Form For - Fatal编程技术网

Ruby on rails 尝试将rails时间默认值选择为空值

Ruby on rails 尝试将rails时间默认值选择为空值,ruby-on-rails,ruby,forms,ruby-on-rails-4,form-for,Ruby On Rails,Ruby,Forms,Ruby On Rails 4,Form For,Ride是一个具有名为:requested_time的属性的模型,该属性是日期时间。我希望网站用户能够选择他们的时间,但不是日期。我正在尝试创建一个默认为空值的时间选择下拉列表。表单中出现了一个空白值,但它默认为5AM,我不知道为什么。我希望默认值为空。以下是查看代码: <%= f.time_select :requested_time, {twelve_hour: true, minute_step: 15, ampm: true, include_blank: true},

Ride是一个具有名为:requested_time的属性的模型,该属性是日期时间。我希望网站用户能够选择他们的时间,但不是日期。我正在尝试创建一个默认为空值的时间选择下拉列表。表单中出现了一个空白值,但它默认为5AM,我不知道为什么。我希望默认值为空。以下是查看代码:

<%= f.time_select :requested_time, 
    {twelve_hour: true, minute_step: 15, ampm: true, include_blank: true},
     class: 'form-control pull-left', style: 'width: 10%; margin-right: 10px;' %>

我可以在视图代码中输入什么使字段默认为空值

为了说明我的问题,这里显示了以下内容:

如果单击该字段,则会出现一个空白值:


我希望该空白值是加载页面时选择字段自动设置的值。

我相信在控制器中,您必须进行如下明确检查:

if params[:start_time] && ! params[:start_time][:hour].blank? && !params[:start_time][:minute].blank?
  params[:event][:start_time] = "#{params[:start_time][:hour]}:#{params[:start_time][:minute]}:00"
else
  params[:event][:start_time] = nil
end
要确认,请检查以确保浏览器正在发送空白作为开始时间,如果是,则应执行上述操作


顺便说一句,我敢肯定你得到凌晨5点的原因是因为时区问题。使用Time.zone正确设置区域。

我相信在控制器中,您必须进行如下明确检查:

if params[:start_time] && ! params[:start_time][:hour].blank? && !params[:start_time][:minute].blank?
  params[:event][:start_time] = "#{params[:start_time][:hour]}:#{params[:start_time][:minute]}:00"
else
  params[:event][:start_time] = nil
end
要确认,请检查以确保浏览器正在发送空白作为开始时间,如果是,则应执行上述操作


顺便说一句,我敢肯定你得到凌晨5点的原因是因为时区问题。使用Time.zone正确设置区域。

谢谢,但这里没有参数散列?这将只涉及到创建操作,但我仍处于新状态。我不是想改变它的保存方式,而是想改变它在表单中的显示方式。对不起,我有点困惑于“表单中出现了一个空白值,但它默认为5AM”。你在表格上看到一个空白,对吗?然后你在什么时候/哪里/如何看到5AM的值?我在问题中添加了一些图片以使问题更容易理解。但是在“选择”下面它确实显示一个空白???只是确认一下,很抱歉这么厚!我的错不是你的:-)没问题!是的,它显示在“选择”下。空白值在那里,但它没有拖欠。谢谢,但是这里没有PARAMS散列吗?这将只涉及到创建操作,但我仍处于新状态。我不是想改变它的保存方式,而是想改变它在表单中的显示方式。对不起,我有点困惑于“表单中出现了一个空白值,但它默认为5AM”。你在表格上看到一个空白,对吗?然后你在什么时候/哪里/如何看到5AM的值?我在问题中添加了一些图片以使问题更容易理解。但是在“选择”下面它确实显示一个空白???只是确认一下,很抱歉这么厚!我的错不是你的:-)没问题!是的,它显示在“选择”下。空白值在那里,但它不拖欠它。