From c797e30da242ae75d342eb12f0f4c6e15531e630 Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Sun, 8 Jan 2012 21:45:08 +0000 Subject: [PATCH] Adding topic urls. --- notes/models.py | 5 +++++ notes/urls.py | 2 ++ notes/views.py | 7 ++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/notes/models.py b/notes/models.py index b3c70e2..fdde7e6 100644 --- a/notes/models.py +++ b/notes/models.py @@ -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. diff --git a/notes/urls.py b/notes/urls.py index 9f5dfd3..d686588 100644 --- a/notes/urls.py +++ b/notes/urls.py @@ -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[+\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\d+)/$', NoteDetail.as_view(), name='notes-view'), url('^(?P\d+)/edit/$', login_required(EditView.as_view(model=Note)), name='notes-edit'), diff --git a/notes/views.py b/notes/views.py index 8578a26..4147a11 100644 --- a/notes/views.py +++ b/notes/views.py @@ -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 -- 2.39.5