no functional changes:

update format
This commit is contained in:
2020-06-19 11:26:12 +00:00
parent df2ac94617
commit c9f9ad3680
4 changed files with 45 additions and 39 deletions

View File

@@ -1,5 +1,5 @@
from django.shortcuts import render
from django.http import HttpResponse
from django.http import HttpResponse, JsonResponse
from collections import deque
from .models import Post, PostSerializer
@@ -12,39 +12,44 @@ from django.core.cache import cache
from django.utils.text import slugify
from django.utils import timezone
from django.http import JsonResponse
def get_next_dict():
posts=Post.article_objects.order_by('-public_date').values('slug')
posts = Post.article_objects.order_by('-public_date').values('slug')
print(posts)
d={}
d = {}
print(d)
for k,v in enumerate(posts):
if k ==len(posts)-1:
if k == len(posts) - 1:
break
d[v['slug']]=posts[k+1]['slug']
d[v['slug']] = posts[k+1]['slug']
print(d)
return d
# Create your views here.
def index(request):
posts=deque(Post.objects.order_by('-public_date').all())
f=lambda p: p.tags
t=map(f, posts)
posts = deque(Post.objects.order_by('-public_date').all())
f = lambda p: p.tags
t = map(f, posts)
return render(request, 'posts/index.html', {"posts": posts, "tags_list": t })
return render(request, 'posts/index.html', {"posts": posts, "tags_list": t})
def tags(request,tag=""):
posts=deque(Post.objects.filter(tags__name=tag))
return render(request, 'posts/index.html', {"posts": posts, "tags_list":None })
posts = deque(Post.objects.filter(tags__name=tag))
return render(request, 'posts/index.html', {"posts": posts, "tags_list": None})
def show(request,id=None):
if id.isdigit() or id is int:
p=Post.objects.get(id=int(id))
elif id != ""and not id is None:
p=Post.objects.get(slug=(id))
similar_posts = p.tags.similar_objects()
return render(request, 'posts/show.html', {"post":p,"next":get_next_dict().get(p.slug,None), "related_posts": similar_posts})
p = Post.objects.get(id=int(id))
elif id != "" and not id is None:
p = Post.objects.get(slug=(id))
context = {
"post": p,
"next": get_next_dict().get(p.slug,None),
"related_posts": p.tags.similar_objects()
}
return render(request, 'posts/show.html', context)
# Ajax function that is called to calculate a slug from the title
def slug_calc(request):
@@ -56,7 +61,7 @@ def slug_calc(request):
datetime_now = timezone.now()
date_str = datetime_now.strftime("%Y-%m-%d")
slug_str = slugify(date_str)+"-"+slugify(title)
slug_str = slugify(date_str) + "-" + slugify(title)
return HttpResponse(slug_str)
@@ -88,6 +93,7 @@ class PostViewSet(viewsets.ModelViewSet):
#permission_classes = [permissions.IsAuthenticated]
filter_backends = [DjangoFilterBackend]
filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id']
lookup_field='slug'
lookup_field = 'slug'
def pre_save(self, obj):
obj.image = self.request.FILES.get('image')