2013-06-09 9 views
13

私はPlay 2.1を使用していますが、私はいくつかの奇妙な問題があります。コントローラ内のルートとサブパッケージ

私はというクラスのcontrollersパッケージにサブパッケージmessagesを持っています。

マイroutesファイルは次のようになります。

GET  \ controllers.messages.i18n.index() 
POST \ controllers.messages.i18n.process() 

私は今、次のアクションでのフォームを持っている:

@helper.form(action = routes.messages.i18n.process()) 

が、これは私にエラー与える:

value messages is not a member of object controllers.routes

Play 2.0.4以前ではサブパッケージを使用していました私の設定で誰かがエラーを見つけられますか?

routesファイルでコントローラが見つからないと不平を言うことはありません。

答えて

18

経路はcontrollers.messages.routes.i18n.process()である必要があります。 target/scala-2.10/src_managedディレクトリを調べて、生成されたファイルを検出できます。

Javaコーディング規約では、クラスは大文字で始まる必要があります。

+0

クラス名が失敗コピー/貼り付け/編集だったが、これは動作します:

は、このリンクの下の部分を読みます! 'src_managed'ヒントもありがとう – Aerus

10

FYI、2.2では若干異なります。

routes.confは、次のようになります。プレイ2.4.6のJavaユーザーの場合

controllers.admin.routes.StuffController.show() 
3

:コード内

GET /admin/stuff controllers.admin.StuffController.show() 

がどのように見える

はのは、あなたのコントローラー(アプリケーション)としましょうとアクション(ログアウト)はcom.stackoverflow.play.Application.logout()です。


があなたのテンプレート(*.scala.html)でそれを使用するには、やる@com.stackoverflow.play.routes.Application.logout(例えば、<a href="@com.stackoverflow.play.routes.Application.logout()"><form action="@com.stackoverflow.play.routes.Application.logout()" method="post">)。 https://playframework.com/documentation/2.4.x/JavaRouting

関連する問題