使用bootstrap-datepicker-rails,现在我的日期是字符串,但我需要保存为db作为日期

时间:2014-11-18 22:58:50

标签: mysql ruby-on-rails twitter-bootstrap date bootstrap-datepicker

经过多次压力后,终于获得了datepicker gem,成功打开了一个迷你日历,并在该字段中输入日期。 尽管使用了这个jQuery脚本,

$jQuery ->

$(document).on "focus", "[data-provide~='datepicker']", (e) ->
 - $(this).datepicker
 - format: "yyyy-mm-dd"
 - weekStart: 1
 - autoclose: true;

...字段中返回的日期仍为mm / dd / yyyy格式。只要我想在数据库中使用字符串字段(并且我可能最终以这种方式重建db),这很好,但我需要在start_date - end_date上做一些简单的数学函数,这就是我创建的原因数据库首先包含日期字段而不是字符串字段。

所以我需要做两件事之一 - 将我的db日期字段重新格式化为字符串(并在我的数学计算中使用Date.parse())或找到一种方法来保存返回到文本字段的日期,生成通过这个:

<div class="field">
    <%= f.label :end_date %><br>
    <%= f.text_field :end_date, 'data-provide' => 'datepicker' %>
  </div>

...作为mysql日期字段,格式化为yyyy-mm-dd。在提交表单之前,有没有办法在_form.html.erb文档中执行此操作?

或者,或者,bootstrap-datepicker-rails插件中有一个参数/选项,它允许输入字段是日期字段而不是text_field,或者将返回值转换为日期而不是字符串?

1 个答案:

答案 0 :(得分:0)

//这里解决方案
     object.date = Date.strptime(params [:date],'%m /%d /%Y')。to_date

//根据您的代码更改日期格式