Have you looked at django-fsm for managing your state transitions? Overkill for small projects - invaluable for larger ones where state changes can be literally anywhere.
https://pypi.org/project/django-viewflow/ Is from the same developer which is a workflow/rules engine built on top of FSM.