Grails:为什么<g:link>不发出链接?

  • 本文关键字:链接 Grails link grails gsp
  • 更新时间 :
  • 英文 :


我有:

<td>
   <g:link controller="dashboard" action="view">Dashboard</g:link>
   <a href="fkd.co">Hello</a>
</td>

结果是:

仪表板你好

看起来您的 gsp 页面根本没有编译。在网络浏览器中检查源。您应该使用运行应用程序命令运行嵌入式服务器,然后访问该页面。

我刚刚发现<g:link>被覆盖了,并且只有在登录用户有权访问该链接时才创建链接,否则会发出正文文本。代码如下所示:

def link = { attrs, body ->
        def url = "/${pageScope.controllerName}/${attrs.action}"
        if( !securityService.isLoggedIn() ||
            securityService?.hasAccessToUri("/${pageScope.controllerName}/${attrs.action}") ) {
            def originalTagBean = grailsApplication.mainContext.getBean('org.codehaus.groovy.grails.plugins.web.taglib.ApplicationTagLib')
            originalTagBean.link.call(attrs, body)
        } else {
            out << body()
        }
    }

最新更新