- Grails 1.1 Web Application Development
- Jon Dickinson
- 281字
- 2021-04-01 14:19:30
Message domain class
The very first thing you need to do is create a domain class to represent messages so that they can be saved to the database. You saw how to create domain classes in Chapter 2. Go to the grails-app/domain/app
directory and create a file called Message.groovy
and then add the following code to this file:
package app class Message { String title String detail Date dateCreated Date lastUpdated static constraints = { title( blank: false, size: 1..50 ) detail( blank: false ) dateCreated( nullable: true ) lastUpdated( nullable: true ) } }
There is nothing in the above code that is unfamiliar. But let's have a recap anyway. You have created a Groovy class called Message
with the following properties:
title —
the title of the messagedetail —
the details of the messagedateCreated —
the date on which the message was createdlastUpdated —
the date on which the message was last updated
You have also specified that the title
cannot be blank and must be between 1 and 50 characters in length; notice the use of a Groovy range here. The detail
of the message cannot be blank and the dateCreated
and lastUpdated
properties can be null.
Tip
dateCreated and lastUpdated convention
There is a convention in Grails that if a domain class has a property of the type Date
with the name dateCreated
or lastUpdated
, it will automatically populate these properties when the GORM persists the object to the database. When a message is first saved there should be no information in the dateCreated
and lastUpdated
fields, so you need to allow them to be null
to pass the validation before saving the object.
- HTML5 Multimedia Development Cookbook
- 持續(xù)演進(jìn)的Cloud Native:云原生架構(gòu)下微服務(wù)最佳實(shí)踐
- Authorware應(yīng)用案例教程
- Excel 2013電子表格處理
- 青少年美育趣味課堂:青少年學(xué)攝影修圖
- AutoCAD 2016中文版完全自學(xué)手冊(cè)
- SOLIDWORKS中文版實(shí)用教程
- 網(wǎng)店美工設(shè)計(jì):Photoshop CC案例教程(視頻指導(dǎo)版)
- Photoshop CC完全自學(xué)教程:從入門(mén)到實(shí)踐(全新版)
- Magento 1.3 Theme Design
- 中文版3ds Max 2014基礎(chǔ)培訓(xùn)教程
- NumPy 1.5 Beginner's Guide
- Flash CS6 動(dòng)畫(huà)制作實(shí)戰(zhàn)從入門(mén)到精通
- UG NX 12.0中文版自學(xué)視頻教程
- MySQL for Python