Khi lưu trữ các đối tượng miền sử dụng Grails/GORM, tôi thường tự hỏi tại sao lệnh save() bị lỗi.o.errors.allErrors.each {println it} theo mặc định khi không lưu đối tượng miền
này có thể dễ dàng được giải quyết bằng cách thêm logic:
if (!o.save()) {
o.errors.allErrors.each { println it }
}
Tuy nhiên, thêm này ở khắp mọi nơi tôi làm một lệnh .save() thêm nhiều mã trùng lặp. Theo tinh thần của DRY, tôi muốn cấu hình Grails/GORM để tự động in mọi lỗi lưu vào giao diện điều khiển (stderr). Điều đó có thể không? Nếu không, làm thế nào để mở rộng GORM để làm cho nó có thể?
Đó là một sự mở rộng tốt đẹp của câu trả lời tôi đã cung cấp. Vui vì bạn đã giải quyết nó. – codeLes
Điều này sẽ thêm s() cho tất cả các đối tượng, không chỉ đối tượng miền. Để chỉ thêm nó vào các đối tượng miền, tôi nghĩ bạn cần thực hiện lập trình meta trong trình đóng góp doWithDynamicMethods của một plugin –