无法将列表从控制器传递到播放框架中查看

unable to pass a List from controller to view in play framework

我会将 BSONDocument 列表传递给 html 文件。错误是 too many arguments for method apply: ()play.api.templates.HtmlFormat.Appendable in object list

@{ import reactivemongo.bson._}
@(list: List[BSONDocument])


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
@list.map(elem=> {
    <p>
        @{elem}
    </p>
   })
</body>
</html>

我从控制器调用视图如下

findFutureList.map((list:List[BSONDocument]) => {
Logger.debug("list count:"+list.length)
Ok(views.html.list(list)) 
 })

如果我传递一个 List[String] 而不是 List[BSONDocument],代码就可以工作。我认为问题在于在视图中导入反应库

第一行必须是参数行。导入必须在它之后,所以你可以用类似的东西修复它:

@(list: List[reactivemongo.bson.BSONDocument])

或者

@(list: List[reactivemongo.bson.BSONDocument])
@{ import reactivemongo.bson._}