隐式旋转参数:未指定值参数消息
Implicit twirl parameter: Unspecified value parameter messages
我正在尝试在 twirl 模板中使用国际化。我遵循了这个指南:
我在使用 implicit messages: Messages
时遇到问题。我已将我的设置减少到发生错误的最低限度:
测试控制器
import javax.inject.Inject
import play.api.i18n.{I18nSupport, MessagesApi}
import play.api.mvc.{Action, Controller}
class TestController @Inject()(val messagesApi: MessagesApi)
extends Controller with I18nSupport {
def index = Action {
Ok(views.html.test.render())
}
}
test.scala.html
@()(implicit messages: Messages)
我还添加了 routesGenerator := InjectedRoutesGenerator
到我的 build.sbt。
根据我上面链接的文档和指南,这应该足够了。我仍然收到以下编译时错误:
[error] app/controllers/TestController.scala:11: not enough arguments for method render: (messages: play.api.i18n.Messages)play.twirl.api.HtmlFormat.Appendable.
[error] Unspecified value parameter messages.
[error] Ok(views.html.test.render())
- 播放版本:2.5.9
- SBT 版本:0.13.11
- Scala 版本:2.11.7
好吧,显然隐式参数只适用于 apply
方法。而不是当你明确调用 render
.
Ok(views.html.test.render())
必须
Ok(views.html.test())
我正在尝试在 twirl 模板中使用国际化。我遵循了这个指南:
我在使用 implicit messages: Messages
时遇到问题。我已将我的设置减少到发生错误的最低限度:
import javax.inject.Inject
import play.api.i18n.{I18nSupport, MessagesApi}
import play.api.mvc.{Action, Controller}
class TestController @Inject()(val messagesApi: MessagesApi)
extends Controller with I18nSupport {
def index = Action {
Ok(views.html.test.render())
}
}
test.scala.html
@()(implicit messages: Messages)
我还添加了 routesGenerator := InjectedRoutesGenerator
到我的 build.sbt。
根据我上面链接的文档和指南,这应该足够了。我仍然收到以下编译时错误:
[error] app/controllers/TestController.scala:11: not enough arguments for method render: (messages: play.api.i18n.Messages)play.twirl.api.HtmlFormat.Appendable.
[error] Unspecified value parameter messages.
[error] Ok(views.html.test.render())
- 播放版本:2.5.9
- SBT 版本:0.13.11
- Scala 版本:2.11.7
好吧,显然隐式参数只适用于 apply
方法。而不是当你明确调用 render
.
Ok(views.html.test.render())
必须
Ok(views.html.test())