]> git.parisson.com Git - django-notes.git/commitdiff
Adding topic urls.
authorColin Powell <colin.powell@gmail.com>
Sun, 8 Jan 2012 21:45:08 +0000 (21:45 +0000)
committerColin Powell <colin.powell@gmail.com>
Sun, 8 Jan 2012 21:45:08 +0000 (21:45 +0000)
notes/models.py
notes/urls.py
notes/views.py

index b3c70e209e5e5306cb6284b642bd22960e92f7cd..fdde7e6b1ded350bde7c7bcf88833b6f609eb1b1 100644 (file)
@@ -21,6 +21,11 @@ class Topic(TitleSlugDescriptionModel, TimeStampedModel):
     def __unicode__(self):
         return self.title
 
+    @models.permalink
+    def get_absolute_url(self):
+        return ('notes-topic-detail', (), { 'slug': self.slug})
+
+
 class Note(MarkupMixin, TimeStampedModel):
     """
     Note model class.
index 9f5dfd3cb4c975b1a4d2dc427767b55aeba51cb0..d686588e07b44c3c26cbe672e485b11064886ac3 100644 (file)
@@ -8,6 +8,8 @@ from notes.views import NoteList, NoteDetail
 
 urlpatterns = patterns('',
     url(r'^$', NoteList.as_view(), name='notes-index'),
+    url('^topics/$', ListView.as_view(model=Topic), name='notes-topic-list'),
+    url('^topics/(?P<slug>[+\w]+)/$', DetailView.as_view(model=Topic), name='notes-topic-detail'),
     url(r'^add/$', login_required(CreateView.as_view(model=Note), name='notes-create')),
     url('^(?P<pk>\d+)/$', NoteDetail.as_view(), name='notes-view'),
     url('^(?P<pk>\d+)/edit/$', login_required(EditView.as_view(model=Note)), name='notes-edit'),
index 8578a26b61804fc5d8792e9d9a39e0ff2ed702b9..4147a11cd18e29f10fb8d61336ec291a22232bd6 100644 (file)
@@ -9,7 +9,12 @@ class NoteList(ListView):
         if self.request.user.is_authenticated: qs = Note.objects.order_by("-date")
         else: qs = Note.public_objects.order_by("-date")
         return qs
-        
+
+    def get_context_data(self, **kwargs):
+        context = super(NoteList, self).get_context_data(**kwargs)
+        context['topic_list']=Topic.objects.all()
+        return context
+
 class NoteDetail(DetailView):
     model = Note