无法使用 Slick 3.1.1 解析符号 NotNull
Posted
技术标签:
【中文标题】无法使用 Slick 3.1.1 解析符号 NotNull【英文标题】:Cannot resolve symbol NotNull with Slick 3.1.1 【发布时间】:2016-10-06 08:01:50 【问题描述】:我的架构定义如下: 封装模型
import java.sql.Timestamp
import play.api.libs.json.Format, Json
import slick.driver.PostgresDriver.api._
import slick.lifted.Tag
case class ApiKey(id: Option[Int] = None, key: String, createdAt: Timestamp)
object ApiKeys
implicit lazy val apiKeyFormat: Format[ApiKey] = Json.format[ApiKey]
class ApiKeys(tag: Tag) extends Table[ApiKey](tag, "api_key")
...
def createdAt = column[Timestamp]("createdAt", O.NotNull)
...
编译器抱怨Cannot resolve symbol NotNull
,即使文档声明此选项应该可用:http://slick.lightbend.com/doc/3.1.1/schemas.html
即使我查看源代码也没有这样的事情。我在文档中遗漏了什么?
【问题讨论】:
【参考方案1】:O.NotNull
在最新版本的 slick 中被删除。默认情况下,当列声明如下column[A]
时,所有内容都是not null
。要创建nullable
列,您必须将其声明为column[Option[A]]
【讨论】:
以上是关于无法使用 Slick 3.1.1 解析符号 NotNull的主要内容,如果未能解决你的问题,请参考以下文章
无法从“react-slick”解析“SimpleSlider.js”
升级 Play 到 2.4,Slick 到 3.1.1,值 withTransaction 不是 play.api.db.slick.Database 的成员