slick:我需要返回什么类型来遍历视图中的列表
slick: what type do I need get back to iterate though a list in a view
下面的代码可以显示用户最近的 post,但现在我想获取用户创建的所有 post。我该如何实施?
令我困惑的是我应该取回的类型。是Future[Option[Seq[Blog]]]还是Future[Seq[Option[Blog]]或者有没有更好的方案?
def find(user: User): Future[Option[Blog]] = {
val blogQuery = blogs.filter(_.userID === user.userID.toString).sortBy(_.createdAt.desc)
db.run(blogQuery.result.headOption).map { dbBlogOption =>
dbBlogOption.map {
dbBlog => Blog(None, dbBlog.title, dbBlog.content, UUID.fromString(dbBlog.userID), DateTime.parse(dbBlog.createdAt))
}
}
}
只需省略 .headOption
即可得到 Future[Seq[Blog]] 。
请注意,如果找到 none,它可以为空,因此您不需要选项。
下面的代码可以显示用户最近的 post,但现在我想获取用户创建的所有 post。我该如何实施?
令我困惑的是我应该取回的类型。是Future[Option[Seq[Blog]]]还是Future[Seq[Option[Blog]]或者有没有更好的方案?
def find(user: User): Future[Option[Blog]] = {
val blogQuery = blogs.filter(_.userID === user.userID.toString).sortBy(_.createdAt.desc)
db.run(blogQuery.result.headOption).map { dbBlogOption =>
dbBlogOption.map {
dbBlog => Blog(None, dbBlog.title, dbBlog.content, UUID.fromString(dbBlog.userID), DateTime.parse(dbBlog.createdAt))
}
}
}
只需省略 .headOption
即可得到 Future[Seq[Blog]] 。
请注意,如果找到 none,它可以为空,因此您不需要选项。