Django model validation with clean method

7428
0

The clean() method validates model instances before saving. I raise ValidationError for invalid data. This runs on form submission and can be called explicitly with full_clean(). I validate cross-field constraints that can't be expressed as field validators. Unlike field-level validation, clean() has access to all fields. I use NON_FIELD_ERRORS for general validation errors. For complex validation, I sometimes split into multiple methods. This ensures data integrity at the model layer.