如何将模型中的枚举绑定(bind)到路由定义中的静态参数?
示例(组成):
型号:
class User (..)
{
public static enum TYPES { Default, Admin, Editor, Visitor }
}
Controller :
class Users (..)
{
public static void create(long parentUserId, User.TYPES type)
{
(..)
}
}
路线:
GET /user/{parentUserId}/create/editor Users.create(type:User.TYPES.Editor)
查看模板:
<a href="@{Users.create(user.id, 'Editor')}">create editor</a>
或者
<a href="@{Users.create(user.id, User.TYPES.Editor)}">create editor</a>
两者都不起作用。我应该如何设置?
最佳答案
编辑:我已经在工作环境中对此进行了测试。
以下作品:
模板:
<a href="@{Application.create(5, models.Game.GameType.Succession.name())}">create editor</a>
路线:
GET /user/{parentUserId}/create/{type}/editor Application.create
Controller :
public static void create(long parentUserId, Game.GameType type)
{ ... }
具有预定义参数的路由不起作用:
GET /user/{parentUserId}/editor Application.create(type:models.Game.GameType.Succession.name())
它将始终将
type
设置为null