If you want to decouple validations from model it would be probably the easiest solution
3.738 Downloads
MIT