【发布时间】:2020-12-27 18:46:28
【问题描述】:
我正在使用 Play 2.8.7、Scala 2.13.4。
import play.api.mvc._
import play.api.mvc.Results._
import play.mvc.Controller
import play.api.i18n.{I18nSupport, MessagesApi}
import javax.inject._
class Application @Inject() (
val messagesApi: MessagesApi
) extends Controller with I18nSupport {
def greeting = Action { implicit request =>
Ok("hello")
}
}
1.我要导入play.api.mvc.Results.Ok——为什么我只做import play.api.mvc.Results._时才导入,而我只做import play.api.mvc._时不导入?
后者在我使用 Play 2.4.3 (Scala 2.11.11) 时可以工作。
2. 编译器无法解析符号“Action”。这是为什么...?我做了import play.api.mvc._
更新:
有人建议导入play.mvc.BaseController。
Play 2.8.7中似乎不存在。
【问题讨论】:
-
我很确定这与 Scala 版本无关。您基本上升级了 Play 框架的
4次要版本,很多事情可能已经改变。我建议您查看更改日志并编辑此问题的标题,以便更清晰。 -
代码很基础,所以不是想升级它,更像是用2.8写,然后和2.4比较……我写的时候确实试着按照Play 2.8的文档. playframework.com/documentation/2.8.x/ScalaActionsComposition你觉得更好的标题是什么?
-
类似 "Play: 结果代码导入从 2.4 更改为 2.8".
-
好的,更新了。
标签: scala playframework