since you're making this change anyway... can I convince you to use django.core.urlresolvers.reverse to generate these instead, for the same having one canonical place where URLs are mapped?  
For example this line should become something like
`return reverse("courses.additional_pages.views.main", args=['self.course.prefix','self.course.suffix','self.slug'])`