도메인 클래스의 모든 save()
호출 전에 공통 코드를 실행하는 좋은/표준 방법이 있습니까?Grails - 모든 저장 전에 코드를 실행하는 방법은 무엇입니까?
, 내 도메인
class Page {
String url
Boolean processed
Date date
Integer urlCrc
}
나의 양식은 3 첫 번째 필드가 나는 urlCrc
에게 save()
메소드가 호출 될 때마다 시간을 계산하고 싶습니다. 주입 방법 때문에 저장 메서드를 재정의 할 수 없습니다.
감사 기능, 그것을 작동합니다. 불행히도 일부 라우팅 문제로 인해 grails.org이 다운되었습니다 http://grails.1312388.n4.nabble.com/Is-the-plugin-repository-down-td4628824i40.html 그래서 여기에 질문해야합니다 – mrok
위 해결책이 가장 좋을 수도 있지만, 또 다른 옵션은 grails 계산 필드를 사용하는 것입니다. 그것에 대한 문서를 참조하십시오. –
저장하기 전에 코드를 실행하려면 beforeUpdate()/beforeInsert()를 사용하십시오. 'beforeValidate()'를 사용하면'validate()'(save() 메소드를 호출 할 때 항상 호출됩니다. save 전에 validate()를 호출하십시오). 따라서 코드를 저장하지 않아도 유효성을 검사하기 전에 코드가 실행됩니다. – IgniteCoders