from django.db import models from modelcluster.fields import ParentalKey from wagtail.core.models import Page, Orderable from wagtail.core.fields import RichTextField from wagtail.admin.edit_handlers import FieldPanel, InlinePanel from wagtail.images.edit_handlers import ImageChooserPanel from wagtail.search import index class StrankaPage(Page): vybaveni = RichTextField(blank=True) sluzby = RichTextField(blank=True) pracoviste = RichTextField(blank=True) image1 = models.ForeignKey( 'wagtailimages.Image', on_delete=models.PROTECT, null=True, related_name='+' ) image2 = models.ForeignKey( 'wagtailimages.Image', on_delete=models.PROTECT, null=True, related_name='+' ) image3 = models.ForeignKey( 'wagtailimages.Image', on_delete=models.PROTECT, null=True, related_name='+' ) content_panels = Page.content_panels + [ FieldPanel('vybaveni', classname="full"), FieldPanel('sluzby', classname="full"), FieldPanel('pracoviste', classname="full"), ImageChooserPanel('image1'), ImageChooserPanel('image2'), ImageChooserPanel('image3'), ] class StrankaPageGalleryImage(Orderable): page = ParentalKey(StrankaPage, on_delete=models.CASCADE, related_name='gallery_images') image = models.ForeignKey( 'wagtailimages.Image', on_delete=models.CASCADE, related_name='+' ) caption = models.CharField(blank=True, max_length=250) panels = [ ImageChooserPanel('image'), FieldPanel('caption'), ]