我正在尝试在我的控制器范围之外呈现模板。
我要渲染模板的视图位于views/home/index.gsp
编辑:
我尝试使用我调用的标记库来渲染位于/views 中的主布局“main.gsp”中的/views/templates 中的模板“ _list - clients.gsp ”和“ _list - hubs.gsp ”位于/views/client中的视图“ list.gsp ”
这是我如何将内容标签包含到视图中:
<g:pageProperty name="page.client-menu"/>
在这里,我在 list.gsp 的内容标记中调用 taglib:
<content tag="client-menu">
<g:createClientMenu ></g:createClientMenu>
</content>
这是我的标签库:
package com.pmedia.taglib
import com.pmedia.domain.Company
class CreateClientMenuTagLib {
def createClientMenu = { attrs, body ->
def company = Company.findByName("pMediaNetwork")
out << '<ul>'
out << '<li class="dropdown">'
out << '<a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">'
out << 'Select Hub or Client for ' + company?.name
out << '<b class="caret"></b>'
out << '</a>'
out << '<ul class="dropdown-menu pull-right">'
if ( company?.getHubs()) {
out << render(template:"/templates/list-hubs", collection: company.getHubs(), var:"hubs")
}
if ( company?.getClients()) {
out << render(template:"/templates/list-clients", collection: company.getClients(), var:"clients")
}
out << '</ul>'
out << '</li>'
out << '</ul>'
}
}
模板位于views/templates/_list-hubs.gsp
我不断收到此错误:
URI
/newLayout/home/index
Class
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException
Message
Template not found for name [templates/list-hubs] and path [/home/templates/_list-hubs.gsp]
当我用“/”引导 URL 时,我希望 grails 开始在视图文件夹中查找,但由于某些原因找不到模板。
有谁知道如何解决这个问题?