summaryrefslogtreecommitdiffstats
path: root/blog/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'blog/models.py')
-rw-r--r--blog/models.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/blog/models.py b/blog/models.py
new file mode 100644
index 0000000..126ba57
--- /dev/null
+++ b/blog/models.py
@@ -0,0 +1,33 @@
+from django.db import models
+from main.models import Tag, Activity
+from django.db.models.signals import post_save, post_delete
+
+class Post(models.Model):
+ subject = models.CharField(max_length=500)
+ body = models.TextField()
+ tags = models.ManyToManyField(Tag, null=True, blank=True)
+ postdate = models.DateTimeField(auto_now=True)
+
+ def __unicode__(self):
+ return self.subject
+
+def post_saved_callback(sender, **kwargs):
+ if kwargs['created']:
+ acttype = 'add'
+ else:
+ acttype = 'edit'
+
+ a = Activity(actcategory='blog',
+ actdescription=kwargs["instance"].subject,
+ acttype = acttype,
+ objpk = kwargs["instance"].pk)
+ a.save()
+
+def post_deleted_callback(sender, **kwargs):
+ a = Activity(actcategory='blog',
+ actdescription=kwargs["instance"].subject,
+ acttype = 'delete')
+ a.save()
+
+post_save.connect(post_saved_callback, sender=Post)
+post_delete.connect(post_deleted_callback, sender=Post)