【问题标题】:Slick 2.x filter by mapped column type (java.util.Date)Slick 2.x 按映射列类型过滤(java.util.Date)
【发布时间】:2014-09-04 09:09:22
【问题描述】:

我在我的模型案例类中使用 java.util.Date。由于 Slick 不支持开箱即用的 j.u.Date,因此我在 Table 类中添加了像 implicit val dateColumnMapper = MappedColumnType.base[Date, SqlDate](d => new SqlDate(d.getTime), d => d) 这样的隐式映射。

但现在我坚持按日期字段过滤:proposalsQuery.filter(_.since >= since)。我尝试了不同的选项,但总是出现编译错误:value >= is not a member of scala.slick.lifted.Column[java.util.Date]

由于我是 Scala/Slick 工作示例的新手,我非常感谢您对问题的简单解释。

谢谢!

【问题讨论】:

    标签: scala slick-2.0


    【解决方案1】:

    隐式映射器必须在您编写过滤器查询的地方可用。

    【讨论】:

    • 对于问答 +2。我已将隐式映射器移至我的控制器并导入 import java.util.Date。它完美地工作。谢谢。 implicit val date2SqlDate = MappedColumnType.base[Date, java.sql.Timestamp]( d => new java.sql.Timestamp(d.getTime), d => new java.util.Date(d.getTime) )
    【解决方案2】:

    你应该在你的文件中导入这个

    import com.github.tototoshi.slick.JdbcJodaSupport._

    这是图书馆 "com.github.tototoshi" %% "slick-joda-mapper" % "1.2.0"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多