如何将表单字段值传递给Grails中的服务方法?

问题描述:

我在学习Grails,遇到问题。我实现了脚手架,为我提供了我想要的基本Web表单,并自动生成了控制器。在控制器中,创建代码将接受来自表单中字段的URL输入,然后调用服务方法,我们将其称为executeUrl(),它在某个逻辑中使用该URL,这已完成。如何将表单字段值传递给Grails中的服务方法?

所以我有一个名为myUrl的类有一个属性urlName。

myUrl aUrl = new Url(params) 
UrlService.executeUrl(aUrl) 

问题是我需要填充aUrl.urlName的东西,因为我上面传递null。当用户在创建表单中输入url时,我如何获取该值并将其传递给executeUrl()?希望这是有道理的,教程已经帮助了这一点,但我卡住了。任何帮助赞赏。

于是开始与你的表单字段,假设你有这样的:

<input type="text" name="url" id="url" /> 

在你的控制器,你可以抓住从PARAMS网址像

def url = params.url 

如果你有一个名为url现场你的MyUrl类你可以传递params给构造函数,groovy会为你绑定这个值,命名在这里很关键

class MyUrl { 
    String url 
} 

new MyUrl(params) 
+0

它看起来像我在我生成的form.gsp文件中有错误。 \t \t 显示错误:“无法解析属性键”。不知道为什么这是自动生成的。有人知道怎么修这个东西吗? – Sulteric

+0

这只是一个警告,您需要在messages.properties中有相应的条目,例如'myurl.urlName.label = URL' –

+0

明白了,谢谢! – Sulteric