【问题标题】:Sorting by DateTime in Slick在 Slick 中按日期时间排序
【发布时间】:2019-07-07 11:00:50
【问题描述】:

我目前在 Slick 中遇到了一个棘手的问题。我正在尝试使用时间戳对表的查询进行排序:

TableName.filter(tableAttribute === 1).sortBy(_.tableTimestamp)

时间戳是 slick 内的 joda.DateTime 类型。当我尝试排序时,出现以下错误:

No implicit view available from dao.Tables.profile.api.Rep[org.joda.time.DateTime] => slick.lifted.Ordered.

我假设这不是 Slick 内置的。有没有一种快速简洁的方法来添加隐式视图并解决这个问题?

谢谢!

【问题讨论】:

    标签: scala slick


    【解决方案1】:

    您可能正在寻找使用 Ordering.fromLessThan 的隐式转换,如下所示:

    import org.joda.time.DateTime
    
    implicit def datetimeOrdering: Ordering[DateTime] = Ordering.fromLessThan(_ isBefore _)
    

    如果您想颠倒顺序,只需将isBefore 替换为isAfter

    【讨论】:

      猜你喜欢
      • 2018-10-18
      • 1970-01-01
      • 1970-01-01
      • 2012-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多