我有一个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?
解决方法
看起来像“默认: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