Some of Django's choices on how to handle data integrity are wrong, or at the very least, unexpected to the uninitiated developers. I'm not here to pass judgement; like many people, I'd just like to get back to doing real work. Some notes on how to stay safe in Django:
- Django now has both Form validations and Model validations
- Django used to only have Form validations
- Form’s
is_valid()
performs model validation automatically full_clean()
is never actually called by Django (see ticket #13100)