0

我有一个看起来像/myController/myAction/id.

我如何隐藏该 URL 中的 id,使其看起来像:/myController/myAction/username 并且仍然在控制器中接收 id

4

1 回答 1

0

如果您实际上没有以任何其他方式发送 Id 并且仅发送用户名并且可以通过用户名获取用户并且仍然需要在控制器中有 user.id 。正如@Mr.Cat 在@Alidad 的给定链接中提到的那样: "/myController/myAction/$username"(controller: "myController",action: "myAction") 然后添加过滤器:

class userFilters {
    def filters = {
        addId(controller: 'myController', action: 'myAction') {
            before = {
                if (params && params.username) {
                    def u = User.findByUsername(params.username)
                    params.id = u.id
                }
            }
        }
    }
}
于 2013-06-07T00:24:53.850 回答