Grails在另一个视图中呈现视图.Contextpath到views文件夹

Al-*_*unk 2 grails-2.0

尝试从Grails中的另一个视图渲染视图.

<g:render contextPath="??" template="first_view" />
Run Code Online (Sandbox Code Playgroud)

我在index.gsp并且愿意渲染在特定控制器下找到的视图(例如:user/first_view.gsp).我理解视图的正确路径应该在文档中所述的"contextPath"中设置:http://grails.org/doc/latest/ref/Tags/render.html

应用程序视图的contextPath是什么?

小智 5

我认为您根本不需要设置上下文路径.从渲染文档:

请注意,如果模板属性的值以'/'开头,则将相对于views目录解析.这对于在视图之间共享模板很有用.如果没有前导'/',它将首先相对于当前控制器的视图目录进行解析,然后失败,顶级视图目录.

在你的case(<g:render contextPath="??" template="first_view" />)中,render标签将在_first_view.gsp的当前视图的目录中查找.如果要在模块的用户视图目录中找到该模板,请将标记更改为<g:render template="/user/first_view" />

请注意,template属性中的路径必须以'/'开头