Groovy Grails domain实体类详解_属性校验排序【Grails中文教程】

1.创建实体model类的方法
grails create-domain-class User

2.创建的User实体类
 实体类中添加:dataCreated ,grails在创建数据时会自动添加创建时间
 实体类中添加:lastUpdated, grails将在每次更新时修改次字段的值
 如果要关闭以上配置需要在mapping中添加 autoTimestamp false如下:
 static mapping = {
    autoTimestamp false
 }

 如果要按某以字段顺序排序 在mapping中添加  sort "startDate"
 
3.在实体类中设置字段在页面上的显示顺序
 需要在constraints 中按顺序编写如下:
  static constraints = {
        userName()
        password()
    }

 输入http://localhost:8080/demo/user/create 查看显示的字段顺序

4为字段属性增加验证信息 如长度、必须、大小范围 等限制

 userName(blank:false,maxSize:50) //不允许为空,最大长度50
 password(blank:false,password:true) //不允许为空,以密码显示
 sex(inList:["F","M"]) //性别只能是 F和M
 age(min:10,max:100)     //年龄必须在10到100之间

 grails校验时间时应该主意,
 如:验证开赛时间不能小于当前时间的写法
 不能在验证中直接使用new Date 因为给值会在程序启动时设置这个时间
 需要使用闭包操作如下:、
 static constraints = {
    startDate(validator:{return (it > new Date())})
 }

 这样每次请求都会产生新的时间
 
5.grails 修改请求的项目名
修改application.properties中的app.name=userDemo ,把userDemo改成你请求的URL

6.输入grails generate-all
    grails generate-all User 会产生一个完整的控制器和一组对应的GSP视图页面,
    一个完整的增删改查代码就自动创建好,不需要自己在写多余的代码,非常便捷高效
   
7.controller类自动化创建
 添加 def scaffold = true 对该属性提供了增删改查CRUD全部功能
 运行 grails run-app 输入http://localhost:8080/demo/user/create 相关的试图和功能都有了
 加入def scaffold = true 你看不到Gsp界面是如何写的,默认是不显示的,如果要暴露所有的视图、控制器
 显示出来的命令需要运行:grails install-templates 这样就可以查看所有的代码细节
 

来源://作者:admin/更新时间:2013-11-20
相关文章
评论:
验证码:
匿名评论: