控制器訪問的變量,我有以下的Grails控制器的Grails - 普惠制
class UserController {
def userService
def roleService
def index() {
def roles = roleService.listRoles()
[roles: roles]
}
def userDetails() {
[user: userService.getUser(params.id), role:params.role]
}
def updateUser() {
def user = userService.getUser(params.id)
if (!(params.username)) {
flash.message = "You have to enter a username!"
redirect(action: "userDetails")
}
else {
user.username = params.username
user.person.title = params.title
user.person.given = params.given
user.person.middle = params.middle
user.person.family = params.family
userService.updateUser(user)
redirect(action: "index")
}
}
}
與index()
啓動用戶獲得當前可用的所有角色和用戶的列表。用戶然後可以選擇鏈接到-操作的一個特定用戶。在那裏,我檢索有關用戶的id
的信息params.id
和用戶的角色名稱params.role
。
在userDetails.gsp
用戶能夠更新一些用戶的屬性。但是,如果他沒有輸入用戶名,他應該重定向回userDetails.gsp
。 (我知道我可以用required
-gtribute在gsp中檢查它 - 它只是瞭解功能)
這裏是我卡住的地方 - 當使用-action時,兩個參數傳遞給gsp 。但是現在當提交重定向時,我不知道如何訪問這些信息。因此,呈現userDetails.gsp
會導致錯誤,因爲有關user
和role
的所需信息不可用。
任何幫助將不勝感激!
它的工作。其實我不得不把下面的代碼放在''userDetails()''''''''''''''''''' -行動。謝謝! – gabriel
如果'params'可以工作,我並不是100%確定的,我已經用你的信息更新了我的答案 –