我使用Slick查询数据库。我将一个Case类传递给我的查询方法,该方法类似于......
case class queryParams(id:Int, age:Option[Int] = None,
categoryId:Option[Int] = None)
我的Slick查询类似于......
val query = this.filter( row =>
(row.id == queryParams.id))
query.list
这很好用。但我现在想要做的是扩展查询以包括其他queryParams成员"如果"它们是定义的,但我不确定如何构建它。
我想要的是这样......
for { row <- this.list
if(row.id == queryParams.id)
// include
if(queryParams.age.isDefined) row.age == queryParams.age.get
} yield row
如何在查询中包含可选参数?
由于
答案 0 :(得分:0)
我最终使用了自定义&#34; MaybeFilter&#34;在各个地方发布的解决方案,包括......