如何隐藏Grails脚手架视图中的密码字段?

时间:2016-11-22 14:02:23

标签: grails groovy grails-domain-class

根据the docs,Grails提供了许多“对持久性没有影响但是自定义脚手架”的约束。其中之一是password约束。这是我如何使用它:

class User {

    String username
    String password

    static constraints = {
        username blank: false
        password blank: false, password: true
    }
}

与脚手架结合使用时,编辑视图使用专门的密码输入作为我的密码字段(没关系),但索引和显示视图仍然以纯文本显示密码(根本不是)。有没有办法在创建和编辑视图中使用密码字段 ,或至少在其他视图上用星号或其他字符掩盖?否则,我想知道这种约束的真正好处是什么。我尝试将display: false, editable: true指定为附加约束,但无济于事。

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是通过字段插件使用customized field rendering

  • 创建文件夹grails-app\views\_fields\user\password
  • 将两个文件放在此文件夹中:_displayWidget.gsp_displayWrapper.gsp
  • 在两个文件中输入<g:each in="${0..value.length()}">&bull;</g:each>

密码字段不会从索引和显示视图中消失,但至少您不会再看到它的值,而是更换一个子弹点。创建和编辑视图仍然根据属性约束使用密码输入小部件。