X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=planetstack%2Fmodel_policy.py;h=ba0cb9947bef86a92b6180648c36382fe7951fee;hb=7918f048bab764628950ed459ffcebdc38f4c179;hp=fa558175b8658aa01af64a09b9912f454560c410;hpb=ba5379b74bdf94a4e52363a1d6031d64a2184036;p=plstackapi.git diff --git a/planetstack/model_policy.py b/planetstack/model_policy.py index fa55817..ba0cb99 100644 --- a/planetstack/model_policy.py +++ b/planetstack/model_policy.py @@ -5,11 +5,14 @@ from core.models import * import model_policies @receiver(post_save) -def post_save_handler(sender, **kwargs): +def post_save_handler(sender, instance, **kwargs): sender_name = sender.__name__ policy_name = 'model_policy_%s'%sender_name - try: - policy_handler = getattr(model_policies, policy_name) - policy_handler.handle(sender) - except: - pass + + if (not kwargs['update_fields']): + try: + policy_handler = getattr(model_policies, policy_name, None) + if policy_handler is not None: + policy_handler.handle(instance) + except: + pass