Browse Source

nakladatelstvi

master
Ivan Pomykacz 4 years ago
parent
commit
c13c6d051d
  1. 33
      nakladatelstvi/home/models.py
  2. 36
      nakladatelstvi/knihy/models.py
  3. 2
      nakladatelstvi/readme.md
  4. 33
      nakladatelstvi/stranky/models.py

33
nakladatelstvi/home/models.py

@ -0,0 +1,33 @@
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 HomePage(Page):
obsah = RichTextField(blank=True)
content_panels = Page.content_panels + [
FieldPanel('obsah', classname="full"),
InlinePanel('kolotoc_obrazky', label="Obrázky pro kolotoč"),
]
search_fields = Page.search_fields + [
index.SearchField('obsah'),
]
class Kolotoc(Orderable):
page = ParentalKey(HomePage, on_delete=models.CASCADE, related_name='kolotoc_obrazky')
obrazek = models.ForeignKey('wagtailimages.Image', on_delete=models.CASCADE, related_name='+', verbose_name='Obrázek')
popisek = models.CharField(blank=True, max_length=250, verbose_name='Popisek')
panels = [
ImageChooserPanel('obrazek'),
FieldPanel('popisek'),
]

36
nakladatelstvi/knihy/models.py

@ -0,0 +1,36 @@
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 Katalog(Page):
parent_page_types = ['home.HomePage', ]
subpage_types = ['Kniha', ]
class Kniha(Page):
podnadpis = models.CharField(max_length=128, verbose_name='Podnadpis', null=True, blank=True)
datum_vydani = models.DateField("Datum vydání")
autor = models.CharField(max_length=128, verbose_name='Autor')
anotace = RichTextField(blank=True)
obrazek = models.ForeignKey('wagtailimages.Image', on_delete=models.PROTECT, related_name='+')
parent_page_types = ['Katalog', ]
search_fields = Page.search_fields + [
index.SearchField('anotace'),
]
content_panels = Page.content_panels + [
FieldPanel('podnadpis'),
FieldPanel('autor'),
FieldPanel('datum_vydani'),
FieldPanel('anotace', classname="full"),
ImageChooserPanel('obrazek'),
]

2
nakladatelstvi/readme.md

@ -0,0 +1,2 @@
# Nakladatelství

33
nakladatelstvi/stranky/models.py

@ -0,0 +1,33 @@
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 Stranka(Page):
obsah = RichTextField(blank=True, verbose_name="Obsah stránky")
search_fields = Page.search_fields + [
index.SearchField('obsah'),
]
content_panels = Page.content_panels + [
FieldPanel('obsah', classname="full"),
InlinePanel('obrazky', label="Obrázky"),
]
class StrankaObrazek(Orderable):
page = ParentalKey(Stranka, on_delete=models.CASCADE, related_name='obrazky')
soubor = models.ForeignKey('wagtailimages.Image', on_delete=models.CASCADE, related_name='+', verbose_name='Obrázek')
popisek = models.CharField(blank=True, max_length=250, verbose_name='Popisek')
panels = [
ImageChooserPanel('soubor'),
FieldPanel('popisek'),
]
Loading…
Cancel
Save