【问题标题】:what is the difference between grails link ,createlink and resource tagsgrails链接,createlink和资源标签有什么区别
【发布时间】:2014-07-04 05:41:11
【问题描述】:

grails 链接、创建链接和资源标签之间有什么区别吗?我想知道何时使用每个标签,据我所知,createlink 标签已被贬低

【问题讨论】:

标签: grails


【解决方案1】:

很简单:

g.createLink 仅生成 url,如 /aaa/bbb/222,例如基于控制器/动作/参数

g.link 生成<a>-HTML-tag,使用g.createLink 生成要放入@href 属性的url

g.resource 输出资源文件的路径,位于web-app 文件夹下

<link rel="stylesheet" href="${resource(dir:'css',file:'style.css')}" />

产生

<link rel="stylesheet" href="/css/style.css" />

【讨论】:

    【解决方案2】:

    CREATE LINK 当你知道在 gsp 页面中使用喜欢的绝对或相对路径时,它会变得非常强大。

    假设我有以下路径 /yourapp/controller1/view1 而不是使用

      <a href="{grailscontext.thensomebaseurlstuff}/"+controller/view /> ,
    

    根据某些上下文使用以下失败将使其变得容易。

     <a href="${createLink(action: 'list')}">my link</a>
        <g:createLink url="[action:'list',controller:'book']" />
    

    而且,glink 是上面使用taglib 形式的实现。。与上面的效果相同,但在taglib 中会减少一些计算或创建一些不确定。

    g.link("text of the link here", action:"foo", controller:"bar")
    

    ResourceTags 难怪它在将 imagecssjs 文件夹/文件资源附加到 grails 应用程序中时非常重要。

    // generates "/shop/css/main.css"
    <g:resource dir="css" file="main.css" />
    // generates "http://portal.mygreatsite.com/css/main.css"
    <g:resource dir="css" file="main.css" absolute="true" />
    
    // generates "http://admin.mygreatsite.com/css/main.css"
    <g:resource dir="css" file="main.css" base="http://admin.mygreatsite.com"/>
    

    阿罗哈!

    【讨论】:

      猜你喜欢
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-20
      • 1970-01-01
      • 2016-02-15
      • 2014-07-29
      相关资源
      最近更新 更多