From dab1a625c6b6e6251c45565ee1a5d01255d9a265 Mon Sep 17 00:00:00 2001 From: CDaut Date: Mon, 12 Sep 2022 00:37:42 +0200 Subject: [PATCH] implemented viewcount --- docker-compose.yml | 2 +- markdownblog/Dockerfile | 2 +- .../blog/migrations/0003_blogpost_views.py | 18 ++++++++++++++++++ markdownblog/blog/models.py | 1 + markdownblog/blog/views.py | 2 ++ .../markdownblog/templates/blog/order.html | 1 + 6 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 markdownblog/blog/migrations/0003_blogpost_views.py diff --git a/docker-compose.yml b/docker-compose.yml index 23245fa..c36aa77 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -11,7 +11,7 @@ services: - "8000:8000" env_file: - envvars.env - command: python3 manage.py runserver_plus --cert-file cert.pem --key-file key.pem --keep-meta-shutdown 0.0.0.0:8000 + command: python3 manage.py runserver 0.0.0.0:8000 db: image: postgres:14.3-alpine diff --git a/markdownblog/Dockerfile b/markdownblog/Dockerfile index a1db92f..a09e2f0 100644 --- a/markdownblog/Dockerfile +++ b/markdownblog/Dockerfile @@ -1,7 +1,7 @@ FROM python:3.10-slim ENV PYTHONBUFFERED 1 -RUN apt update && apt upgrade +RUN apt update && apt upgrade -y RUN mkdir "/markdownblog" WORKDIR "/markdownblog" ADD ./requirements.txt /markdownblog/ diff --git a/markdownblog/blog/migrations/0003_blogpost_views.py b/markdownblog/blog/migrations/0003_blogpost_views.py new file mode 100644 index 0000000..40ac164 --- /dev/null +++ b/markdownblog/blog/migrations/0003_blogpost_views.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-11 22:33 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('blog', '0002_alter_blogpost_title_alter_tag_name_alter_topic_name'), + ] + + operations = [ + migrations.AddField( + model_name='blogpost', + name='views', + field=models.IntegerField(default=0), + ), + ] diff --git a/markdownblog/blog/models.py b/markdownblog/blog/models.py index 11bbeaa..fcabcd1 100644 --- a/markdownblog/blog/models.py +++ b/markdownblog/blog/models.py @@ -30,3 +30,4 @@ class Blogpost(models.Model): tags = models.ManyToManyField(Tag) topic = models.ForeignKey(Topic, blank=True, null=True, on_delete=models.CASCADE) mdfile = models.CharField(max_length=255) + views = models.IntegerField(default=0) diff --git a/markdownblog/blog/views.py b/markdownblog/blog/views.py index c967c01..bd98bc0 100644 --- a/markdownblog/blog/views.py +++ b/markdownblog/blog/views.py @@ -32,6 +32,8 @@ def render_md_file(path) -> Template: def viewblog(request, title) -> HttpResponse: post = Blogpost.objects.get(title=title) + post.views += 1 + post.save() filepath = os.path.join(os.environ.get("MD_FILE_PATH"), title + ".md") rendered_html = render_md_file(filepath) diff --git a/markdownblog/markdownblog/templates/blog/order.html b/markdownblog/markdownblog/templates/blog/order.html index c17beb2..8e26890 100644 --- a/markdownblog/markdownblog/templates/blog/order.html +++ b/markdownblog/markdownblog/templates/blog/order.html @@ -19,6 +19,7 @@
  • {{ post }} +

    Views: {{ post.views }}