Fixes #4076: Recommendations from collections.
[wolnelektury.git] / src / libraries / models.py
index c83afbb..3e80301 100644 (file)
@@ -1,8 +1,8 @@
-# -*- coding: utf-8 -*-\r
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.\r
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.\r
 #\r
 from django.db import models\r
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.\r
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.\r
 #\r
 from django.db import models\r
+from django.urls import reverse\r
 from django.utils.translation import ugettext_lazy as _\r
 \r
 \r
 from django.utils.translation import ugettext_lazy as _\r
 \r
 \r
@@ -16,30 +16,28 @@ class Catalog(models.Model):
         verbose_name = _('catalog')\r
         verbose_name_plural = _('catalogs')\r
 \r
         verbose_name = _('catalog')\r
         verbose_name_plural = _('catalogs')\r
 \r
-    def __unicode__(self):\r
+    def __str__(self):\r
         return self.name\r
 \r
         return self.name\r
 \r
-    @models.permalink\r
     def get_absolute_url(self):\r
     def get_absolute_url(self):\r
-        return ('libraries_catalog_view', [self.slug])\r
+        return reverse('libraries_catalog_view', args=[self.slug])\r
 \r
 \r
 class Library(models.Model):\r
     """Represent a single library in the libraries dictionary"""\r
 \r
 \r
 \r
 class Library(models.Model):\r
     """Represent a single library in the libraries dictionary"""\r
 \r
-    name = models.CharField(_('name'), max_length=120, blank=True)
-    slug = models.SlugField(_('slug'), max_length=120, unique=True, db_index=True, null=True)
+    name = models.CharField(_('name'), max_length=120, blank=True)\r
+    slug = models.SlugField(_('slug'), max_length=120, unique=True, db_index=True, null=True)\r
     catalog = models.ForeignKey(Catalog, null=False, related_name='libraries', on_delete=models.PROTECT)\r
     catalog = models.ForeignKey(Catalog, null=False, related_name='libraries', on_delete=models.PROTECT)\r
-    url = models.CharField(_('url'), max_length=120, blank=True)
+    url = models.CharField(_('url'), max_length=120, blank=True)\r
     description = models.TextField(_('description'), blank=True)\r
 \r
     class Meta:\r
         verbose_name = _('library')\r
         verbose_name_plural = _('libraries')\r
 \r
     description = models.TextField(_('description'), blank=True)\r
 \r
     class Meta:\r
         verbose_name = _('library')\r
         verbose_name_plural = _('libraries')\r
 \r
-    def __unicode__(self):\r
+    def __str__(self):\r
         return self.name\r
 \r
         return self.name\r
 \r
-    @models.permalink\r
     def get_absolute_url(self):\r
     def get_absolute_url(self):\r
-        return ('libraries_library_view', [self.catalog.slug, self.slug])\r
+        return reverse('libraries_library_view', args=[self.catalog.slug, self.slug])\r