[英]Slick table Query: Trouble with recognizing values
誰能告訴我為什么在這種情況下:
Query(Users) foreach {case (userId, userName) =>
println(userId + ", " + userName) }
Scala可以識別userId,但是在這種情況下:
val l = List[(Int, String)]()
Query(Users) foreach {
case (userId, userName) =>
l::(foo(List[(userId, userName)]))
}
不是嗎? (例如,在第二種情況下會識別“ =>”右側的userId,但在第一種情況下不會識別)
Users是一個光滑安裝的數據庫,如下所示:
object Users extends Table[(Int, String)]("Users") {
def userId = column[Int]("UserId", O.PrimaryKey, O.AutoInc)
def userName = column[String]("UserName")
def * = userId ~ userName
}
我認為您的意思是:
l::(foo(List((userId, userName))))
當您將內容放在方括號之間時,您正在嘗試鍵入列表,並且我假設您實際上是想將userId
和userName
的Tuple
添加到List中。
如果您只想將所有內容放入該List
,而無需該Tuple
提取器,則也可以這樣編寫:
Query(Users) foreach { tup =>
l::(foo(List(tup)))
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.