在脚本标记内使用grails语句

Pra*_*ash 1 javascript grails

我可以使用grails语句,如下所示:

<script>
    var opt = "Frederik";
    var check = ${com.mytest.User?.findByName(opt)};
</script>
Run Code Online (Sandbox Code Playgroud)

这里我要做的是,检查是否在用户表中找到了值,如果找到了值,我想将值选择为liHTML中的所有元素.

但上述声明不承认选择.

Sha*_*wal 5

像这样修改你的语句:

var check = ${com.mytest.User.findByName(opt) ? true : false};
Run Code Online (Sandbox Code Playgroud)

?不需要,因为User域类不能为null,因为在缺少类之前应用程序不会引导.

此外,您不需要findBy查询,因为countBy只有检查才足够:

var check = ${com.mytest.User.countByName(opt) ? true : false};
Run Code Online (Sandbox Code Playgroud)

  • 对于像这样的情况,findBy/findAllBy为+100000 - > countBy.这是许多通常很小的优化之一,可以根据使用情况加起来,从而提高性能和可扩展性 (2认同)