From b35eca8c38f89af8b30035a973f1edfba416eff6 Mon Sep 17 00:00:00 2001
From: Weitian LI <liweitianux@gmail.com>
Date: Tue, 22 Apr 2014 09:26:48 +0800
Subject: * added GenericRelation attachments field to 'Notice' model * removed
 'demo.urls' from urls.py

---
 django_skaschool/urls.py |  5 -----
 notice/admin.py          |  4 ++--
 notice/models.py         | 11 ++++++-----
 3 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/django_skaschool/urls.py b/django_skaschool/urls.py
index 65b05c4..8aa5ae3 100644
--- a/django_skaschool/urls.py
+++ b/django_skaschool/urls.py
@@ -27,11 +27,6 @@ urlpatterns += patterns('',
 )
 
 
-## demo
-urlpatterns += patterns('',
-    url(r'^demo/', include('demo.urls')),
-)
-
 ## staticfiles
 if settings.DEBUG:
     urlpatterns += staticfiles_urlpatterns()
diff --git a/notice/admin.py b/notice/admin.py
index f5ec3f8..bed31e4 100644
--- a/notice/admin.py
+++ b/notice/admin.py
@@ -1,12 +1,12 @@
 # -*- coding: utf-8 -*-
 
 from django.contrib import admin
-from django.contrib.contenttypes.generic import GenericTabularInline
+from django.contrib.contenttypes import generic
 
 from notice.models import Notice, NoticeCategory, NoticeAttachment
 
 
-class NoticeAttachmentInline(GenericTabularInline):
+class NoticeAttachmentInline(generic.GenericTabularInline):
     model = NoticeAttachment
 
 
diff --git a/notice/models.py b/notice/models.py
index 469ad07..af2e648 100644
--- a/notice/models.py
+++ b/notice/models.py
@@ -3,7 +3,7 @@
 from django.db import models
 from django.contrib.auth.models import User
 from django.contrib.contenttypes.models import ContentType
-from django.contrib.contenttypes.generic import GenericForeignKey
+from django.contrib.contenttypes import generic
 from django.utils.translation import ugettext_lazy as _
 
 
@@ -17,7 +17,8 @@ class Notice(models.Model):
     publisher = models.ForeignKey(User, verbose_name=_("Publisher"))
     is_important = models.BooleanField(_("Is important"), default=False)
     contents = models.TextField(_("Contents"))
-    # NoticeAttachments to deal with attachments
+    # NoticeAttachment to deal with attachments
+    attachments = generic.GenericRelation('NoticeAttachment')
 
     class Meta:
         verbose_name = _('notice')
@@ -46,8 +47,8 @@ class NoticeCategory(models.Model):
 class NoticeAttachment(models.Model):
     attachment = models.FileField(upload_to='notice/attachments',
             verbose_name=_("Attachment"))
-    content_type = models.ForeignKey(ContentType, verbose_name=_("Content type"))
-    object_id = models.PositiveIntegerField(_("Object ID"))
-    content_object = GenericForeignKey("content_type", "object_id")
+    content_type = models.ForeignKey(ContentType)
+    object_id = models.PositiveIntegerField()
+    content_object = generic.GenericForeignKey("content_type", "object_id")
 
 
-- 
cgit v1.2.2