我正在尝试检查我的列中是否包含至少一个具有以下伪代码的List中的元素:
其中b.testColumn = Rep [Optional [List]] 。
def checkTest(id: UUID, input: List[String]) = {
for {
a <- a.query if a.id === id
b <- b.query if a.bId === b.id && b.testColumn.intersect(input)
} yield b
ApplicationDatabase.slick.run...
}
下面的代码出现类型不匹配的错误:
b <- b.query if a.bId === b.id && b.testColumn.intersect(input)
我的问题是-如何轻松解开 Rep [Optional [...]] 并与我的输入值进行比较
答案 0 :(得分:1)
您尝试过inSet吗?
.onDataChange
答案 1 :(得分:1)
经过调查,我发现访问Rep[Optional[...]]
的最简单方法是执行.map
例如-b <- b.query if a.bId === b.id && b.map(_.testColumn).inSetBind(input)