mysql - 使用 bootstrap-datepicker-rails,现在我的日期是字符串,但我需要将其作为日期保存到数据库

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

经过一番努力,终于让日期选择器 gem 成功打开一个迷你日历并在字段中输入日期。 尽管使用了这个 jQuery 脚本,

$jQuery ->

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

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

所以我需要做两件事之一 - 将我的数据库日期字段重新格式化为字符串(并在我的数学计算中使用 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 插件中是否有一个参数/选项,允许输入字段为日期字段而不是文本字段,或者将返回值转换为日期而不是字符串?

最佳答案

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

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

关于mysql - 使用 bootstrap-datepicker-rails,现在我的日期是字符串,但我需要将其作为日期保存到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27005758/

相关文章:

html - 调整超大屏幕视频高度

javascript - 在 Bootstrap 弹出窗口中使用 Angular

css - Bootstrap 按钮不取消选择

mysql - PostgreSQL:从 MySQL 转储导入数据库 - 语法错误

php - 使用 hash_hmac 在 php 中保护密码

Javascript 数组转换为 JSON 对象而不是数组

ruby-on-rails - 复制 Twitter 风格 - 在同一页面上集成索引和创建表单

php - Mysql select table 依赖另外两张表

mysql - 如何更改mysql表列的日期格式

ruby-on-rails - Rails 3.1 中错误消息的嵌套模型属性本地化