#Wagtailチュートリアル 3
<=2 ホームページを始めよう
=>4 バナーを追加しよう (2)
##バナーを追加しよう(1)
8,9,10,11
home/models.py
from django.db import models #⓪ モデルをインポート
from wagtail.core.models import Page #⓪ページをインポート
from wagtail.core.fields import RichTextField #⑧ RichTextFieldをインポート
from wagtail.admin.edit_handlers import FieldPanel,PageChooserPanel #④ FieldPanelをインポート 11 必要なものをインポート
from wagtail.images.edit_handlers import ImageChooserPanel #11 必要なものをインポート
class HomePage(Page):#⓪ページを引数に
templates = "home/home_page.html" #① wagtailtutorial/templates/home/homepage.html
max_count = 1 #⑥ ADD CHILD PAGEを制限
banner_title = models.CharField(max_length=100, blank=False, null=True) #③ banner_titleを定義
banner_subtitle = RichTextField(features=["bold", "italic"]) #⑧banner_subtitleを定義
banner_image = models.ForeignKey( #⑨banner_imageを定義
"wagtailimages.Image",
null=True,
blank=False,
on_delete=models.SET_NULL,
related_name="+"
)
banner_cta = models.ForeignKey( #⑩banner_ctaを定義
"wagtailcore.Page",
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name="+"
)
content_panels = Page.content_panels + [ #④ 11 admin画面に追加
FieldPanel("banner_title"),
FieldPanel("banner_subtitle"),
ImageChooserPanel("banner_image"),
PageChooserPanel("banner_cta")
]
class Meta:
#verbose_name = "OH HELLO WORLD" ⑦ ADD CHILD PAGEでの表記
verbose_name = "Home Page"
verbose_name_plural = "Home Pages"