Include model policies
authorSapan Bhatia <gwsapan@gmail.com>
Wed, 3 Sep 2014 17:14:40 +0000 (13:14 -0400)
committerSapan Bhatia <gwsapan@gmail.com>
Wed, 3 Sep 2014 17:14:40 +0000 (13:14 -0400)
planetstack/core/models/plcorebase.py
planetstack/model_policies.py [new file with mode: 0644]
planetstack/model_policies/model_policy_Site.py [new file with mode: 0644]
planetstack/model_policy.py [new file with mode: 0644]

index 446245b..4ac60b3 100644 (file)
@@ -5,6 +5,7 @@ from django.db import models
 from django.forms.models import model_to_dict
 from django.core.urlresolvers import reverse
 from django.forms.models import model_to_dict
+import model_policies
 
 try:
     # This is a no-op if observer_disabled is set to 1 in the config file
diff --git a/planetstack/model_policies.py b/planetstack/model_policies.py
new file mode 100644 (file)
index 0000000..3663c27
--- /dev/null
@@ -0,0 +1,8 @@
+from django.core.signals import post_save
+from django.dispatch import receiver
+import pdb
+
+@receiver(post_save)
+def post_save_handler(sender, **kwargs):
+       pdb.set_trace()
+    print("Request finished!")
diff --git a/planetstack/model_policies/model_policy_Site.py b/planetstack/model_policies/model_policy_Site.py
new file mode 100644 (file)
index 0000000..e1183b2
--- /dev/null
@@ -0,0 +1,3 @@
+def handle(o):
+    print "In handler"
+
diff --git a/planetstack/model_policy.py b/planetstack/model_policy.py
new file mode 100644 (file)
index 0000000..38caf01
--- /dev/null
@@ -0,0 +1,14 @@
+from django.db.models.signals import post_save
+from django.dispatch import receiver
+import pdb
+from model_policies import *
+
+@receiver(post_save)
+def post_save_handler(sender, **kwargs):
+       sender_name = sender.__name__
+       policy_name = 'model_policy_%s'%sender_name
+       try:
+               policy_handler = globals[policy_name]
+               policy_handler(sender)
+       except:
+               pass