Play 2.0.2(Play 2.0.1から)にアップグレードしようとしているアプリがあります。Play 2.0.1で動作したが、もう動作しないこのコードがあります
@javascriptRouter("jsRoutes")(
routes.javascript.Contacts.invite,
routes.javascript.Contacts.remove
)
コンパイラは文句を言います:
[error] /myprojectdir/target/scala-2.9.1/src_managed/main/views/html/Contacts/list.template.scala:75: Cannot find any HTTP Request Header here
[error] """),_display_(Seq[Any](/*41.2*/javascriptRouter("jsRoutes")(
[error] ^
[error] one error found
[error] {file:/myprojectdir/}projectname/compile:compile: Compilation failed
[error] Total time: 9 s, completed 11.07.2012 11:38:51
これはメーリングリストで確認されており、1人のユーザーが問題を修正しました。渡す必要のある暗黙のパラメーターがあることがわかりましたが、これを行う方法がわかりません。上記のサンプルファイルに従って、これをテンプレートに追加(?)してみました。基本的に、テンプレートの最初の行を
@(currentUser: User, inviteForm: Form[controllers.Contacts.InviteForm])
に
@(currentUser: User, inviteForm: Form[controllers.Contacts.InviteForm])(implicit request: RequestHeader)
しかし、これはテンプレート(?)の型署名を変更するようですが、これは私が望んでいることではありません。
助言がありますか?(?)が付いているものはすべて、私が完全に確信していないものです。私は以前にScalaでいくつかの暗黙の変換を行ったことがありますが、Playがここで私に何を期待しているか、そして私がScalaを作っているのか、プレイを間違えているのかわかりません。
編集:バグトラッカーに対応するチケットがあります。