slick 3自动生成 - 默认值(timestamp)列,如何定义Rep [Date]功能

时间:2015-08-03 11:47:32

标签: postgresql scala slick slick-3.0

我有以下postgres列定义:

record_time TIMESTAMP WITHOUT TIME ZONE DEFAULT now()

我如何将其映射到光滑?请考虑我希望映射now()函数

生成的默认值

即:

def recordTimestamp: Rep[Date] = column[Date]("record_time", ...???...)

是否应该在...???...当前所在位置附加任何额外定义?

编辑(1)

我不想使用

column[Date]("record_time", O.Default(new Date(System.currentTimeMillis()))) // or some such applicative generation of the date column value

3 个答案:

答案 0 :(得分:3)

我找到了一个博客,说明您可以使用以下内容:

// slick 3
import slick.profile.SqlProfile.ColumnOption.SqlType
def created = column[Timestamp]("created", SqlType("timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP"))

// slick 3
def createdAt = column[Timestamp]("createdAt", O.NotNull, O.DBType("timestamp default now()"))

请参阅:http://queirozf.com/entries/scala-slick-dealing-with-datetime-timestamp-attributes

答案 1 :(得分:2)

我想这还不支持。 问题是:https://github.com/slick/slick/issues/214

答案 2 :(得分:2)

Slick 3示例

{{1}}