Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Ch09: Code and Route Tag Delete.
  • Loading branch information
jambonrose committed Jul 30, 2015
1 parent 8191bf6 commit dc53479
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 3 deletions.
4 changes: 4 additions & 0 deletions organizer/models.py
Expand Up @@ -24,6 +24,10 @@ def get_absolute_url(self):
return reverse('organizer_tag_detail',
kwargs={'slug': self.slug})

def get_delete_url(self):
return reverse('organizer_tag_delete',
kwargs={'slug': self.slug})

def get_update_url(self):
return reverse('organizer_tag_update',
kwargs={'slug': self.slug})
Expand Down
8 changes: 6 additions & 2 deletions organizer/urls.py
Expand Up @@ -3,8 +3,9 @@
from .views import (
NewsLinkCreate, NewsLinkDelete,
NewsLinkUpdate, StartupCreate, StartupUpdate,
TagCreate, TagUpdate, startup_detail,
startup_list, tag_detail, tag_list)
TagCreate, TagDelete, TagUpdate,
startup_detail, startup_list, tag_detail,
tag_list)

urlpatterns = [
url(r'^newslink/create/$',
Expand Down Expand Up @@ -37,6 +38,9 @@
url(r'^tag/(?P<slug>[\w\-]+)/$',
tag_detail,
name='organizer_tag_detail'),
url(r'^tag/(?P<slug>[\w-]+)/delete/$',
TagDelete.as_view(),
name='organizer_tag_delete'),
url(r'^tag/(?P<slug>[\w\-]+)/update/$',
TagUpdate.as_view(),
name='organizer_tag_update'),
Expand Down
12 changes: 11 additions & 1 deletion organizer/views.py
@@ -1,3 +1,4 @@
from django.core.urlresolvers import reverse_lazy
from django.shortcuts import (
get_object_or_404, redirect, render)
from django.views.generic import View
Expand All @@ -6,7 +7,8 @@
NewsLinkForm, StartupForm, TagForm)
from .models import NewsLink, Startup, Tag
from .utils import (
ObjectCreateMixin, ObjectUpdateMixin)
ObjectCreateMixin, ObjectDeleteMixin,
ObjectUpdateMixin)


class NewsLinkCreate(ObjectCreateMixin, View):
Expand Down Expand Up @@ -101,6 +103,14 @@ class TagCreate(ObjectCreateMixin, View):
template_name = 'organizer/tag_form.html'


class TagDelete(ObjectDeleteMixin, View):
model = Tag
success_url = reverse_lazy(
'organizer_tag_list')
template_name = (
'organizer/tag_confirm_delete.html')


def tag_detail(request, slug):
tag = get_object_or_404(
Tag, slug__iexact=slug)
Expand Down

0 comments on commit dc53479

Please sign in to comment.