feat(projet): version weo et wss fonctionnelle de base
Parent
aa99283508
révision
e5991a0563
|
@ -1,3 +1,20 @@
|
|||
from django.db import models
|
||||
from wagtail.core import blocks
|
||||
|
||||
# Create your models here.
|
||||
|
||||
class ImageEnTete(models.ForeignKey):
|
||||
def __init__(self, **kwargs):
|
||||
kwargs['null'] = True
|
||||
kwargs['blank'] = True
|
||||
kwargs['on_delete'] = models.SET_NULL
|
||||
kwargs['related_name'] = '+'
|
||||
kwargs['to'] = 'wagtailimages.Image'
|
||||
super().__init__(**kwargs)
|
||||
|
||||
|
||||
class ContenuBloc(blocks.StructBlock):
|
||||
class Meta:
|
||||
template = 'pepite/blocs/infos.html'
|
||||
icon = 'media'
|
||||
|
||||
titre = blocks.CharBlock(icon='title')
|
||||
|
|
|
@ -1,3 +1,50 @@
|
|||
from django.db import models
|
||||
|
||||
# Create your models here.
|
||||
from wagtail.core.models import Page
|
||||
from wagtail.core.fields import RichTextField, StreamField
|
||||
from wagtail.admin.edit_handlers import FieldPanel, InlinePanel, StreamFieldPanel
|
||||
from wagtail.images.edit_handlers import ImageChooserPanel
|
||||
#from wagtail.contrib.settings.models import BaseSetting, register_setting
|
||||
|
||||
from wss import mixins
|
||||
import weo.models
|
||||
|
||||
class SitePage(Page):
|
||||
|
||||
class Meta:
|
||||
verbose_name = "page"
|
||||
|
||||
### Contraintes de structure
|
||||
### ------------------------
|
||||
|
||||
subpage_types = ['SitePage']
|
||||
parent_page_types = ['Espace', 'Accueil', 'SitePage']
|
||||
|
||||
### Body
|
||||
### ----
|
||||
|
||||
image_en_tete = weo.models.ImageEnTete(blank=True)
|
||||
contenu = StreamField(
|
||||
[('contenu_bloc', weo.models.ContenuBloc())],
|
||||
blank=True)
|
||||
|
||||
content_panels = Page.content_panels + [
|
||||
ImageChooserPanel('image_en_tete'),
|
||||
StreamFieldPanel('contenu'),
|
||||
]
|
||||
|
||||
### Promotion
|
||||
### ---------
|
||||
|
||||
### Réglages
|
||||
### --------
|
||||
|
||||
class Espace(SitePage):
|
||||
bling = RichTextField(blank=True)
|
||||
content_panels = SitePage.content_panels + [
|
||||
FieldPanel('bling'),
|
||||
]
|
||||
|
||||
|
||||
class Accueil(SitePage):
|
||||
parent_page_types = [Page]
|
||||
|
|
Chargement…
Référencer dans un nouveau ticket