【发布时间】:2020-08-21 04:58:44
【问题描述】:
这是一个用于连接 MariaDB 的 Scala Play 项目。
cat build.sbt
...
jdbc,
"org.mariadb.jdbc" % "mariadb-java-client" % "2.6.2",
"com.typesafe.slick" %% "slick" % "3.3.2",
...
class Users(tag: Tag) extends Table[(...)](tag, "USERS") {...}
val users = TableQuery[Users]
for (u <- users) {...}
错误:
value foreach is not a member of slick.lifted.TableQuery[controller.Users]
for (u <- users) {
^
我尝试在 for 循环中将 .result 添加到 users,但我得到了
value foreach is not a member of slick.jdbc.MySQLProfile.StreamingProfileAction[Seq[controller.Users#TableElementType],controller.Users#TableElementType,slick.dbio.Effect.Read]
for (u <- users.result) {
^
我的代码中没有db.run。
【问题讨论】:
-
没有
yield子句的for理解编译信息.foreach()调用您的集合。如果您的集合不支持foreach()方法,那么您必须使用不同的方法来迭代集合。
标签: scala for-loop foreach slick