Tôi đã có một ứng dụng đang sử dụng Grails 1.3.7 mà tôi vừa di chuyển sang Grails 2.0. Ứng dụng này sử dụng các trường tự động dateCreated
và lastUpdated
để quản lý dấu thời gian được liên kết với việc tạo và sửa đổi các đối tượng. Sau khi nâng cấp, tôi nhận được lỗi sau:dateCreated, lastUpdated fields in Grails 2.0
| Running Grails application
| Error 2012-01-29 22:36:53,504 [Thread-8] ERROR util.JDBCExceptionReporter - ERROR: null value in column "date_created" violates not-null constraint
| Error 2012-01-29 22:36:53,510 [Thread-8] ERROR events.PatchedDefaultFlushEventListener - Could not synchronize database state with session
Nhận xét các trường được đề cập ở trên trong Lớp miền của tôi khiến sự cố không còn nữa.
Có các trường dateCreated
và lastUpdated
không được chấp nhận trong Grails 2.0 không? Nếu vậy, điều đó có nghĩa là tôi phải viết mã để xử lý chức năng này theo cách thủ công hoặc có mã được chuyển đến một plugin thuộc loại nào đó, chẳng hạn như plugin audit-trail?
cảm ơn bạn rất nhiều! Tôi đã gặp phải vấn đề bởi vì grails 2.2.0 đã ghi đè giá trị mà tôi đã đặt trong lớp miền. Và điều nguy hiểm hơn là timeStamp được Grails thêm vào là phụ thuộc vào đồng hồ hệ thống. – tusar
Tôi đã cố định ghi đè tự động bằng cách đặt thuộc tính autoTimestamp thành 'false' – tusar
Tính năng này không hoạt động trong Kiểm tra tích hợp – codewandler