默认:" now()"在Sequel中生成嵌入表格

时间:2017-10-28 06:10:05

标签: ruby postgresql sequel

我试图在续集中创建一个默认值:

create_table(:my_table) do
  primary_key :id
  # ..........
  Timestamp :created_at, default: "now()"

运行迁移后,它会生成一个包含此列定义的表:

  --........
  created_at timestamp without time zone DEFAULT '2017-10-28 12:26:00.129157'::timestamp without time zone,

但我想要的是价值" now()"在我插入新值时设置。

3 个答案:

答案 0 :(得分:0)

您是否尝试在时间字段中设置字符串?我不认为这会起作用。您必须使用String :created_at, default: "now()"

答案 1 :(得分:0)

我知道这个问题是前一段时间提出的,但是我遇到了一个类似的问题,我通过使用Sequal.lit

解决了

Timestamp :created_at, default: Sequel.lit("now()")

答案 2 :(得分:0)

方法如下,使用 Sequel.function(:now)Sequel::CURRENT_TIMESTAMP

Time :created_at, default: Sequel.function(:now)
# or...
Time :created_at, default: Sequel::CURRENT_TIMESTAMP
相关问题