|
@ -1,19 +1,12 @@ |
|
|
from django.db import models |
|
|
from django.db import models |
|
|
|
|
|
|
|
|
# Create your models here. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
from wagtail.core.fields import RichTextField |
|
|
|
|
|
from wagtail.admin.edit_handlers import FieldPanel |
|
|
|
|
|
from wagtail.search import index |
|
|
|
|
|
from modelcluster.fields import ParentalKey |
|
|
from modelcluster.fields import ParentalKey |
|
|
|
|
|
|
|
|
from wagtail.core.models import Page, Orderable |
|
|
from wagtail.core.models import Page, Orderable |
|
|
|
|
|
from wagtail.core.fields import RichTextField |
|
|
from wagtail.admin.edit_handlers import FieldPanel, InlinePanel |
|
|
from wagtail.admin.edit_handlers import FieldPanel, InlinePanel |
|
|
from wagtail.images.edit_handlers import ImageChooserPanel |
|
|
from wagtail.images.edit_handlers import ImageChooserPanel |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
from wagtail.search import index |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BlogIndexPage(Page): |
|
|
class BlogIndexPage(Page): |
|
@ -23,12 +16,12 @@ class BlogIndexPage(Page): |
|
|
FieldPanel('intro', classname="full") |
|
|
FieldPanel('intro', classname="full") |
|
|
] |
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BlogPage(Page): |
|
|
class BlogPage(Page): |
|
|
|
|
|
|
|
|
date = models.DateField("Post date") |
|
|
date = models.DateField("Post date") |
|
|
intro = models.CharField(max_length=250) |
|
|
intro = models.CharField(max_length=250) |
|
|
body = RichTextField(blank=True) |
|
|
body = RichTextField(blank=True) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def main_image(self): |
|
|
def main_image(self): |
|
|
gallery_item = self.gallery_images.first() |
|
|
gallery_item = self.gallery_images.first() |
|
|
if gallery_item: |
|
|
if gallery_item: |
|
@ -45,8 +38,9 @@ class BlogPage(Page): |
|
|
FieldPanel('date'), |
|
|
FieldPanel('date'), |
|
|
FieldPanel('intro'), |
|
|
FieldPanel('intro'), |
|
|
FieldPanel('body', classname="full"), |
|
|
FieldPanel('body', classname="full"), |
|
|
InlinePanel('gallery_images', label="Gallery images"), |
|
|
|
|
|
] |
|
|
|
|
|
|
|
|
InlinePanel('gallery_images', label="Obrázky"), |
|
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BlogPageGalleryImage(Orderable): |
|
|
class BlogPageGalleryImage(Orderable): |
|
|
page = ParentalKey(BlogPage, on_delete=models.CASCADE, related_name='gallery_images') |
|
|
page = ParentalKey(BlogPage, on_delete=models.CASCADE, related_name='gallery_images') |
|
@ -59,4 +53,3 @@ class BlogPageGalleryImage(Orderable): |
|
|
ImageChooserPanel('image'), |
|
|
ImageChooserPanel('image'), |
|
|
FieldPanel('caption'), |
|
|
FieldPanel('caption'), |
|
|
] |
|
|
] |
|
|
|
|
|
|
|
|