In this question, someone asked how to write a validation method for Core Data. I did that, and it looks cool. But one thing doesn’t happen: The validation. I can easily set any “bad” value and this method doesn’t get called automatically. What’s the concept behind this? Must I always first call the validation method before setting any value? So would I write setter methods which call the appropriate validation method first?
And if yes, what’s the point of following a strict convention in how to write the validation method signature? I guess there’s also some automatic way of validation, then. How to activate this?
Validation is not “automatic” especially on iOS. On the desktop you will have the UI elements handling the call to validation. On iOS you should be calling
validateValue:forKey:error:with the appropriate key and dealing with the error should there be one. The reason for this is the lack of a standard error display on iOS and the overhead of validating all values.Note this comment in the documentation: