找不到名称的 Grails 3.2.0.M1 模板

Mic*_*ulc 4 grails gson grails3

在我的域类com.example.users.User我添加了临时字段证:

class User implements Serializable {
    ...
    def carnets

    static transients = ['springSecurityService', 'carnets']
    ...
}
Run Code Online (Sandbox Code Playgroud)

在我的 gson 视图user/_user.gson 中,我想呈现它:

import com.example.users.User

model {
    User user
}

json g.render(user, [excludes:['password', 'deleted', 'enabled', 'accountExpired', 'accountLocked', 'passwordExpired', 'authorities']]) {
    //"carnets" g.render(template:"/carnet/index", collection: user.carnets, var:'carnets')
    "carnets" tmpl.'/carnet/index'(user.carnets)
}
Run Code Online (Sandbox Code Playgroud)

但我收到了:

引起:grails.views.ViewRenderException:呈现视图时出错:找不到名称/carnet/index 的模板

Carnet 的视图 gson 文件是自动生成的,从 CarnetController 执行时可以正常工作。

我错过了什么?

RMo*_*sey 7

在我的用例(Grails 3.3.0)中,我必须将模板路径从:更改 tmpl.'message/message' 为:( tmpl.'/message/message' 添加前导斜杠)。

使用该../语法在开发中有效,但在将 WAR 文件部署到 Tomcat 时导致我出错。请参阅:[ https://github.com/grails/grails-views/issues/140]