我知道在HTML中,如果我们有一个按钮,我们想将其链接到另一个页面,我们使用以下标签:<a href="#"> button </a>
但是我尝试了这个圣杯,它不起作用,它将我带到一个空白页:
in views/admin/admin.gsp 我有一个按钮,我正在尝试链接到它 views/admin/gm.gsp
<li><a href="Usersmzeinfile_downgrails-appviewsadmingm.gsp">GM</a></li>
我还尝试了<g:link>
标签:
<g:link resource="gm">
但它没有用,把我带到了错误的无路径页面。我指定了错误的路径是什么问题?或者这不是它在圣杯中的工作方式吗?
我知道如何使用控制器,但这是唯一从一个页面转到另一个页面的方法吗?
我想为这样的任务使用 URL 映射
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?(.$format)?"{
}
"/"(view:"/index")
"500"(view:'/error')
"/views/admin/gm"(resources:'gm')
}
}
<g:link resource="gm">GM</g:link>
您可以将createLink
标签与uri
属性一起使用,例如:
<li><a href="${createLink(uri:'/somepath/gm.gsp')}">GM</a></li>
编辑:好的,那么您需要在UrlMappings.groovy
文件中执行请求映射,例如
"/foo/bar"(view: "path/test")
并通过g:link
as 提出相应的请求
<g:link controller="foo" action="bar" name="someName">GM</g:link>
和 path 是 test.gsp 所在的视图文件夹中目录的路径。
您需要命中资源的方式是
/appName/controller/action
和
/appName/controller/action?params for GET request
您也可以使用
<g:link controller="controller" action="action"></g:link>
或者
<a href="${createLink(controller: 'controller', action: 'action')}">link</a>