代码之家  ›  专栏  ›  技术社区  ›  Luixv

groovy下的acegi用户类约束

  •  0
  • Luixv  · 技术社区  · 15 年前

    我有一个使用Acegi Spring安全性的绝妙应用程序。

    我的用户类如下:

    class User {
    static constraint  = {
      email(blank:true, nullable:true) 
      description(blank:false, nullable:false) 
      username(blank: false, unique: true)
          userRealName(blank: false)
          company(nullable:true, blank:true)
          authorities()
          enabled()
          passwd(blank: false)
    }
    
    static mapping = {
        table 'user_table'
    }
    
    static transients = ['pass']
    static hasMany = [authorities: Role]
    static belongsTo = Role
    String username
    String userRealName
    String passwd
    boolean enabled
    String email
    boolean emailShow
    String description = ''
    String pass = '[secret]'
    
    Company company
    

    }

    注意那家公司 可空和用户名 不是 可空的。 我已经生成了视图和控制器,没有任何问题。 当我试图插入一个新用户(没有公司)时,我会收到一个错误 告诉我公司 强制的。(我已经证实了 数据库中的字段可以为空)

    另一方面,当我生成一个没有用户名的用户时——这应该是被禁止的- 尽管出现异常,验证程序不会报告任何错误 尝试将空值插入不可为空的字段时。

    我在这里做错什么了?

    事先谢谢,

    路易斯

    1 回复  |  直到 15 年前
        1
  •  1
  •   Burt Beckwith    15 年前

    将“静态约束”更改为“静态约束”。