ruby-on-rails – 在Rails中将DATETIME字段设置为零日期

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在Rails中将DATETIME字段设置为零日期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个Rails应用程序,它通过ActiveRecord管理 MySQL数据库.我在该数据库中有一个DATETIME列,我想将其设置为 zero date.(Not NULL,零日期.向下滚动该页面以查看我的意思.)

看起来很简单,但我无法弄清楚如何在不使用原始sql的情况下实现这一点.

以下是我已经尝试过的一些事情:

> field = 0(使用ActiveRecord错误失败列’字段’不能为空)
> field =“0000-00-00”(失败,错误,未定义方法’year’代表nil:NilClass)
> field = DateTime.parse(“0000-00-00”)(失败,DateTime错误无效日期)

有没有办法通过ActiveRecord执行此操作,还是我将被迫使用原始sql

编辑:我不允许改变我的sql数据库的结构来解决这个问题.这是一件工作……

解决方法

看起来像“默认:0”做你想要的:
class CreateAnothers < ActiveRecord::Migration
  def change
    create_table :anothers do |t|
      t.date :start,null: false,default: 0
      t.timestamps null: false
    end
  end
end

猜你在找的Ruby相关文章