我想在我的网址中添加一个额外的参数,用例如下:
当用户登录时,他们还会指定一个“公司”名称,从那一刻起,所有网址都应映射到:
/$company/$controller/$action/$id
主要思想是在所有网址中提供当前公司名称,将其设为可收藏,并且不必将公司名称作为请求参数传递到任何地方。
此外,一旦用户登录,就可以在会话范围内选择公司名称。
在我们的所有网址中插入此参数的正确方法是什么?我试图修改我的UrlMappings映射,但我没有找到插入公司名称的方法。
谢谢,
答案 0 :(得分:2)
我认为你需要的是一个沿着
行的命名URL映射name companyMapping: "/$company/$controller/$action/$id" {
}
并在您的GSP中引用所有链接标记中的命名映射:
<g:link mapping="companyMapping" controller="abcd" action="xyz" params="[company:userCompany]"> my link text </g:link>
当用户最初登录时,您必须将userCompany存储在会话中。