SortBy 项目完成日期不起作用
SortBy project finish date not working
我正在尝试 运行 使用 slickDB 在 scala 中进行查询。
它将获得根据完成日期排序的不同项目 ID。
它给我错误值 project_finish_date 不是 (models.Projects.type, models.ProjectInfo.type) 的成员。
我用 id 替换了 project_finish_date 并且它没有给出任何错误。
但是,当我尝试 sortBy project_finish_date.
时出现错误
def getIDsSortedByFinishDate()(implicit session: Session): List[String] = {
(for {
(p, t) <- Projects leftJoin ProjectData on (_.id === _.project_id)
} yield (p,t)).sortBy{ _.project_finish_date }.map {_.id}.list.distinct
}
数据类型是:
project_finish_data:选项[日期]
id = Int
提前感谢您的帮助:)
看起来你在问题中写了 project_finish_date
,但在你的代码块中使用了 project_finish_data
。这可能是问题所在吗?
如果您以元组的形式产生,那么您应该在 sortBy 和映射中使用元组作为参数,如下所示:
def getIDsSortedByFinishDate()(implicit session: Session): List[String] = {
(for {
(p, t) <- Projects leftJoin ProjectData on (_.id === _.project_id)
} yield (p,t)).sortBy{ case(p, t) => t.project_finish_date }.map { case(p, t) => p.id}.list.distinct
}
我正在尝试 运行 使用 slickDB 在 scala 中进行查询。 它将获得根据完成日期排序的不同项目 ID。 它给我错误值 project_finish_date 不是 (models.Projects.type, models.ProjectInfo.type) 的成员。 我用 id 替换了 project_finish_date 并且它没有给出任何错误。 但是,当我尝试 sortBy project_finish_date.
时出现错误def getIDsSortedByFinishDate()(implicit session: Session): List[String] = {
(for {
(p, t) <- Projects leftJoin ProjectData on (_.id === _.project_id)
} yield (p,t)).sortBy{ _.project_finish_date }.map {_.id}.list.distinct
}
数据类型是:
project_finish_data:选项[日期]
id = Int
提前感谢您的帮助:)
看起来你在问题中写了 project_finish_date
,但在你的代码块中使用了 project_finish_data
。这可能是问题所在吗?
如果您以元组的形式产生,那么您应该在 sortBy 和映射中使用元组作为参数,如下所示:
def getIDsSortedByFinishDate()(implicit session: Session): List[String] = {
(for {
(p, t) <- Projects leftJoin ProjectData on (_.id === _.project_id)
} yield (p,t)).sortBy{ case(p, t) => t.project_finish_date }.map { case(p, t) => p.id}.list.distinct
}