I was wondering about best practices in Django of validating the tables content
I am creating a Sales Orders and my SO should check availability of the items I have in stock and if they are not in stock it will trigger manufacturing orders and purchase orders.
I don't want to make very complex view and looking for a way to decouple logic from there and also I predict performance issues.
What are best practices or ready solutions I can use in Django framework to address view complexity ?
I see different possibilities but I am wondering what will be the best fit in my case :
- managers 
- celery - just to run a job occasionally I want the app to be real time so I don't like this option. 
- using signals /pre_save/post_sav 
- model validation 
- creating extra layer like services.py file - Since I am new to Django I am a bit puzzled what root to take. 
 
     
     
    