prelom/django/blog/views.py

27 lines
835 B
Python

from django.views import generic
from .models import BlogPost
from journal.models import Author
class BlogPostView(generic.DetailView):
model = BlogPost
template_name = 'blog_post.html'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['author'] = Author.objects.get(slug='ed-emery')
post = context['blogpost']
other_posts = []
# Get the posts published directly before and after, if they exist.
before = BlogPost.objects.filter(pk__lt=post.pk).order_by('pk').last()
if before:
other_posts.append(before)
after = BlogPost.objects.filter(pk__gt=post.pk).order_by('pk').first()
if after:
other_posts.append(after)
context['other_posts'] = other_posts
return context