如何在不存储在数据库中的情况下在 Grails 中的 GSP 和控制器之间传递数据?
How can I pass data between GSP and controller in Grails without storing in the database?
是否可以在GSP视图中输入数据,并在程序内部的控制器中使用这些数据进行一些操作,而无需将这些数据存储在域中。例如,我有一个 g:textField 并输入我的名字。我希望能够使用我在控制器中输入的名称进行操作。
None 从视图传递到控制器的数据必须与任何特定域对齐。有几种方法可以做到这一点。
观点:
<g:textField name="name" />
控制器:
class SomeController {
def someAction() {
def name = params.name
// do something with name
}
}
您也可以使用 Command Object。
命令对象:
@Validateable
class SomeCommand {
String name
static constraints = {
name nullable: false
}
}
控制器:
class SomeController {
def someAction(SomeCommand someCommand) {
if (!someCommand.hasErrors()) {
def name = someCommand.name
// do something with name
}
}
}
是否可以在GSP视图中输入数据,并在程序内部的控制器中使用这些数据进行一些操作,而无需将这些数据存储在域中。例如,我有一个 g:textField 并输入我的名字。我希望能够使用我在控制器中输入的名称进行操作。
None 从视图传递到控制器的数据必须与任何特定域对齐。有几种方法可以做到这一点。
观点:
<g:textField name="name" />
控制器:
class SomeController {
def someAction() {
def name = params.name
// do something with name
}
}
您也可以使用 Command Object。
命令对象:
@Validateable
class SomeCommand {
String name
static constraints = {
name nullable: false
}
}
控制器:
class SomeController {
def someAction(SomeCommand someCommand) {
if (!someCommand.hasErrors()) {
def name = someCommand.name
// do something with name
}
}
}