6

以下のように、複数のURLをオーバーロードされたコントローラーメソッドにマップしたいと思います。しかし、「メソッドアカウントが2回定義されています」というエラーが表示されます。それで、これをscala-playフレームワークで行うことは可能ですか?

GET     /order/:userId             controllers.Application.account(userId)       
GET     /order/:userId/:date       controllers.Application.account(userId, date)
4

1 に答える 1

10

逆ルーティングの動作方法のため、そのように使用するには両方のパラメーターを指定する必要がありますaccount。動作する例を次に示します。

Application.scalaの場合:

def account(userId: String, date: String) = Action {
  Ok(userId + " and " + date)
}

ルート内:

GET /order/:userId           controllers.Application.account(userId, date="")
GET /order/:userId/:date     controllers.Application.account(userId, date)
于 2012-09-20T16:44:22.030 に答える