From d6c508bb46d660947718083e3fa214049253c42b Mon Sep 17 00:00:00 2001 From: Yaroslsav-95 <contact@yaroslavps.com> Date: Thu, 29 Mar 2018 16:45:02 +0300 Subject: Fixed bugs, and compatibility issues with Django 2.0 --- weblog/apps.py | 2 +- weblog/migrations/0008_auto_20180329_1316.py | 30 ++++++++++++++++++ weblog/models.py | 16 +++++----- weblog/templates/weblog/sidebar_archive.html | 8 ++++- weblog/templates/weblog_base.html | 4 +-- weblog/templates/weblog_base_old.html | 35 --------------------- .../__pycache__/__init__.cpython-35.pyc | Bin 166 -> 0 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 166 -> 0 bytes .../__pycache__/weblog_extras.cpython-35.pyc | Bin 2682 -> 0 bytes .../__pycache__/weblog_extras.cpython-36.pyc | Bin 1448 -> 0 bytes weblog/templatetags/weblog_extras.py | 2 ++ 11 files changed, 50 insertions(+), 47 deletions(-) create mode 100644 weblog/migrations/0008_auto_20180329_1316.py delete mode 100644 weblog/templates/weblog_base_old.html delete mode 100644 weblog/templatetags/__pycache__/__init__.cpython-35.pyc delete mode 100644 weblog/templatetags/__pycache__/__init__.cpython-36.pyc delete mode 100644 weblog/templatetags/__pycache__/weblog_extras.cpython-35.pyc delete mode 100644 weblog/templatetags/__pycache__/weblog_extras.cpython-36.pyc (limited to 'weblog') diff --git a/weblog/apps.py b/weblog/apps.py index 3389f92..05b5a20 100644 --- a/weblog/apps.py +++ b/weblog/apps.py @@ -5,7 +5,7 @@ SETTINGS = { 'allow_anon_comments': True, 'multilingual': True, 'blog_title': 'Django-Weblog', - 'base_template': 'base.html', + 'base_template': 'weblog_base.html', 'show_author': True, 'use_authors_username': True, 'show_sidebar': True, diff --git a/weblog/migrations/0008_auto_20180329_1316.py b/weblog/migrations/0008_auto_20180329_1316.py new file mode 100644 index 0000000..f66aa65 --- /dev/null +++ b/weblog/migrations/0008_auto_20180329_1316.py @@ -0,0 +1,30 @@ +# Generated by Django 2.0.3 on 2018-03-29 13:16 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('weblog', '0007_auto_20180122_1943'), + ] + + operations = [ + migrations.AlterField( + model_name='blogpost', + name='author', + field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='Author'), + ), + migrations.AlterField( + model_name='category', + name='parent_category', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='weblog.Category', verbose_name='Parent category'), + ), + migrations.AlterField( + model_name='postcomment', + name='author', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='Author'), + ), + ] diff --git a/weblog/models.py b/weblog/models.py index 80e917e..63f3f2c 100644 --- a/weblog/models.py +++ b/weblog/models.py @@ -7,11 +7,11 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy class Category(models.Model): name = models.CharField(max_length=250, verbose_name=pgettext_lazy('Noun, not personal name', 'Name'), blank=False, unique=True) slug = models.SlugField(max_length=60, verbose_name=_('Slug (URL)'), db_index=True, unique=True) - parent_category = models.ForeignKey('self', verbose_name=_('Parent category'), null=True, blank=True) + parent_category = models.ForeignKey('self', verbose_name=_('Parent category'), on_delete=models.PROTECT, null=True, blank=True) def get_absolute_url(self): return reverse('weblog:CategoryIndex', kwargs={'category_slug': self.slug}) - + def __str__(self): return self.name @@ -22,7 +22,7 @@ class Category(models.Model): class CategoryTranslation(models.Model): name = models.CharField(max_length=250, verbose_name=pgettext_lazy('Noun, not personal name', 'Name'), blank=False) language = models.CharField(max_length=5, verbose_name=_('Language (ISO)'), blank=False) - category = models.ForeignKey(Category, verbose_name = pgettext_lazy('Post category', 'Category'), blank=False) + category = models.ForeignKey(Category, verbose_name = pgettext_lazy('Post category', 'Category'), on_delete=models.CASCADE, blank=False) def __str__(self): return self.name @@ -36,7 +36,7 @@ class CategoryTranslation(models.Model): class BlogPost(models.Model): - author = models.ForeignKey(User, verbose_name=_('Author')) + author = models.ForeignKey(User, verbose_name=_('Author'), on_delete=models.PROTECT) title = models.CharField(max_length=100, verbose_name=pgettext_lazy('As in name', 'Title'), blank=False) content = models.TextField(verbose_name=pgettext_lazy('Of post, comment, article, etc.', 'Content'), blank=False) preview_image = models.ImageField(upload_to='weblog/preview_images/%Y/%m/%d/', blank=True, verbose_name=_('Preview image')) @@ -63,7 +63,7 @@ class BlogPost(models.Model): verbose_name_plural = _('Blog Posts') class Translation(models.Model): - post = models.ForeignKey(BlogPost, verbose_name=pgettext_lazy('Noun, as in blog post', 'Post')) + post = models.ForeignKey(BlogPost, verbose_name=pgettext_lazy('Noun, as in blog post', 'Post'), on_delete=models.CASCADE) language = models.CharField(max_length=5, verbose_name=_('Language (ISO)'), blank=False) title = models.CharField(max_length=100, verbose_name=pgettext_lazy('As in name', 'Title'), blank=False) content = models.TextField(verbose_name=pgettext_lazy('Of post, comment, article, etc.', 'Content'), blank=False) @@ -75,8 +75,8 @@ class Translation(models.Model): verbose_name_plural = _('Translations') class PostComment(models.Model): - author = models.ForeignKey(User, verbose_name=_('Author'), null=True, blank=True) - post = models.ForeignKey(BlogPost, verbose_name=pgettext_lazy('Noun, as in blog post', 'Post')) + author = models.ForeignKey(User, verbose_name=_('Author'), on_delete=models.SET_NULL, null=True, blank=True) + post = models.ForeignKey(BlogPost, verbose_name=pgettext_lazy('Noun, as in blog post', 'Post'), on_delete=models.CASCADE) content = models.TextField(verbose_name=pgettext_lazy('Of post, comment, article, etc.', 'Content'), blank=False) class Meta: @@ -90,4 +90,4 @@ class PostCommentForm(ModelForm): labels = {'content': ''} widgets = { 'content': Textarea(attrs={'class': 'form-control', 'rows': '5'}), - } \ No newline at end of file + } diff --git a/weblog/templates/weblog/sidebar_archive.html b/weblog/templates/weblog/sidebar_archive.html index 5953bfe..ca74018 100644 --- a/weblog/templates/weblog/sidebar_archive.html +++ b/weblog/templates/weblog/sidebar_archive.html @@ -1,5 +1,6 @@ {% load i18n %} <h3>{% trans 'Archive' context 'Blog archive' %}</h3> +{% if archive %} <ul class='archive-list'> {% for a_year in archive %} <li><a class="node-toggle" node-target="{{ a_year.0 }}-list" node-state="closed" href="javascript:void(0)" onclick="toggleNode(this);">+</a> <a href="{% url 'weblog:ArchiveIndex' year=a_year.0 %}">{{ a_year.0 }}</a> @@ -10,4 +11,9 @@ </ul> </li> {% endfor %} -</ul> \ No newline at end of file +{% else %} +<div class="text-center"> + <p>{% trans 'Nothing has been posted yet.' %}</p> +</div> +{% endif %} +</ul> diff --git a/weblog/templates/weblog_base.html b/weblog/templates/weblog_base.html index 536e736..6a551ff 100644 --- a/weblog/templates/weblog_base.html +++ b/weblog/templates/weblog_base.html @@ -3,7 +3,7 @@ <html> <head> <meta charset="utf-8"> - <title>Simple blog - {% block title_block %} Home {% endblock %}</title> + <title>{% block title_block %} Home {% endblock %}</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="{% static '/weblog/css/weblog.css' %}"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" defer></script> @@ -25,4 +25,4 @@ {% endblock %} </div> </body> -</html> \ No newline at end of file +</html> diff --git a/weblog/templates/weblog_base_old.html b/weblog/templates/weblog_base_old.html deleted file mode 100644 index a4dbd30..0000000 --- a/weblog/templates/weblog_base_old.html +++ /dev/null @@ -1,35 +0,0 @@ -<!DOCTYPE html> -{% load static %} -<html> - <head> - <meta charset="utf-8"> - <title>Simple blog - {% block title_block %} Home {% endblock %}</title> - <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> - <link rel="stylesheet" href="{% static '/weblog/css/weblog.css' %}"> - <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js" defer></script> - <script src="{% static '/weblog/js/weblog.js' %}" defer></script> - <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> - </head> - <body> - <nav class="navbar navbar-inverse"> - <div class="container nav-container"> - <div class="navbar-header"> - <a class="navbar-brand" href="{% url 'weblog:Index' %}">{{ blog_title }}</a> - </div> - <div class="collapse navbar-collapse"> - <ul class="nav navbar-nav navbar-right"> - <li><a href="{% url 'weblog:ChangeLanguage' language='en' %}?next={{ request.path }}">EN</a></li> - <li><a href="{% url 'weblog:ChangeLanguage' language='es' %}?next={{ request.path }}">ES</a></li> - <li><a href="{% url 'weblog:ChangeLanguage' language='ru' %}?next={{ request.path }}">RU</a></li> - </ul> - </div> - </div> - </nav> - <div class="container"> - {% block content_block %} - {% block blog_block %} - {% endblock %} - {% endblock %} - </div> - </body> -</html> \ No newline at end of file diff --git a/weblog/templatetags/__pycache__/__init__.cpython-35.pyc b/weblog/templatetags/__pycache__/__init__.cpython-35.pyc deleted file mode 100644 index 8b2440b..0000000 Binary files a/weblog/templatetags/__pycache__/__init__.cpython-35.pyc and /dev/null differ diff --git a/weblog/templatetags/__pycache__/__init__.cpython-36.pyc b/weblog/templatetags/__pycache__/__init__.cpython-36.pyc deleted file mode 100644 index 8ec5021..0000000 Binary files a/weblog/templatetags/__pycache__/__init__.cpython-36.pyc and /dev/null differ diff --git a/weblog/templatetags/__pycache__/weblog_extras.cpython-35.pyc b/weblog/templatetags/__pycache__/weblog_extras.cpython-35.pyc deleted file mode 100644 index bcc8327..0000000 Binary files a/weblog/templatetags/__pycache__/weblog_extras.cpython-35.pyc and /dev/null differ diff --git a/weblog/templatetags/__pycache__/weblog_extras.cpython-36.pyc b/weblog/templatetags/__pycache__/weblog_extras.cpython-36.pyc deleted file mode 100644 index eb1b1e6..0000000 Binary files a/weblog/templatetags/__pycache__/weblog_extras.cpython-36.pyc and /dev/null differ diff --git a/weblog/templatetags/weblog_extras.py b/weblog/templatetags/weblog_extras.py index 1f72a86..bf84936 100644 --- a/weblog/templatetags/weblog_extras.py +++ b/weblog/templatetags/weblog_extras.py @@ -46,6 +46,8 @@ def get_sidebar_categories(selected_cat_slug=None): @register.inclusion_tag('weblog/sidebar_archive.html') def get_sidebar_archive(): + if BlogPost.objects.all().count() < 1: + return {} now = datetime.datetime.now() oldest_post = BlogPost.objects.filter(published=True).reverse()[0] first_year = oldest_post.publish_date.year -- cgit v1.2.3