X-Git-Url: https://git.sommitrealweird.co.uk/sommitrealweird.git/blobdiff_plain/acedb5e82f30e6502e2801db9f8d64d879f44347..refs/heads/django-4.2:/sommitrealweird/bpcms/models.py?ds=sidebyside diff --git a/sommitrealweird/bpcms/models.py b/sommitrealweird/bpcms/models.py index ca3eb06..a89f3ba 100644 --- a/sommitrealweird/bpcms/models.py +++ b/sommitrealweird/bpcms/models.py @@ -2,7 +2,7 @@ from django.db import models from django.conf import settings from django.contrib import admin from django.core.cache import cache -from django.core.urlresolvers import reverse +from django.urls import reverse FORMAT_CHOICES = ( ('rst', 'reStructuredText'), @@ -22,18 +22,21 @@ class CSSDocument(models.Model): class Document(models.Model): title = models.CharField(max_length=150) - islive = models.BooleanField() - extracss = models.ManyToManyField(CSSDocument, null=True, blank=True) - folder = models.ForeignKey('Folder', null=True, blank=True) + islive = models.BooleanField(default=False) + extracss = models.ManyToManyField(CSSDocument, blank=True) + folder = models.ForeignKey('Folder', on_delete=models.SET_NULL, null=True, blank=True) format = models.CharField(max_length=10, choices=FORMAT_CHOICES) slug = models.SlugField() content = models.TextField() + class Meta: + ordering = ["folder"] + def __str__(self): return self.__unicode__() def __unicode__(self): - return u'%s (%s)' %(self.title, self.slug) + return u'%s - %s' %(self.get_basic_url(), self.title) def save(self): super(Document, self).save() @@ -63,19 +66,19 @@ class Document(models.Model): def get_absolute_url(self): if self.slug == 'index': if self.folder.parent: - return reverse('bpcms.views.document_view', kwargs={'folders': self.folder.parent.get_path(), 'slug': self.folder.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.folder.parent.get_path() + "/" + self.folder.slug}) else: - return reverse('bpcms.views.document_view', kwargs={'slug': self.folder.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.folder.slug}) else: if self.folder: - return reverse('bpcms.views.document_view', kwargs={'folders': self.get_folder_path(), 'slug': self.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.get_folder_path() + "/" + self.slug}) else: - return reverse('bpcms.views.document_view', kwargs={'slug': self.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.slug}) class Folder(models.Model): title = models.CharField(max_length=150) slug = models.SlugField() - parent = models.ForeignKey('self', null=True, blank=True) + parent = models.ForeignKey('self', on_delete=models.SET_NULL, null=True, blank=True) def __str__(self): return self.__unicode__() @@ -89,11 +92,11 @@ class Folder(models.Model): while curfolder != None: folders.append(curfolder.slug) curfolder = curfolder.parent - + folders.reverse() folderstring = "/".join(folders) return folderstring - + def save(self, force_insert=False, force_update=False): super(Folder, self).save(force_insert, force_update) if self.parent == None: @@ -103,6 +106,6 @@ class Folder(models.Model): def get_absolute_url(self): if self.parent: - return reverse('bpcms.views.document_view', kwargs={'folders': self.parent.get_path(), 'slug': self.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.parent.get_path() + "/" + self.slug}) else: - return reverse('bpcms.views.document_view', kwargs={'slug': self.slug}) + return reverse('bpcms-document-view', kwargs={'path': self.slug})