将Page Class添加到models.py后未创建模板文件

时间:2017-01-19 20:24:34

标签: wagtail

所以我试图按照10 minute guide开始使用Wagtail,但我在创建A basic blog时遇到了问题。

因此修改blog/models.py后:

from wagtail.wagtailcore.models import Page
from wagtail.wagtailcore.fields import RichTextField
from wagtail.wagtailadmin.edit_handlers import FieldPanel

class BlogIndexPage(Page):
intro = RichTextField(blank=True)

content_panels = Page.content_panels + [
    FieldPanel('intro', classname="full")
]

正在运行makemigrationsmigrate

$ python manage.py makemigrations

Migrations for 'blog':
  blog/migrations/0001_initial.py:
    - Create model BlogIndexPage

$ python manage.py migrate

Operations to perform:
  Apply all migrations: admin, auth, blog, contenttypes, home,     sessions, taggit, wagtailadmin, wagtailcore, wagtaildocs, wagtailembeds,      wagtailforms, wagtailimages, wagtailredirects, wagtailsearch, wagtailusers
Running migrations:
  Applying blog.0001_initial... OK

默认模板(blog / templates / blog / blog_index_page.html)无处可寻。据我所知,这个文件应该自动创建:

  

由于该模型名为BlogIndexPage,因此默认模板名称(除非我们覆盖它)将为blog / templates / blog / blog_index_page.html:

或许我错过了什么?

  

Wagtail使用普通的Django模板来呈现每种页面类型。它通过使用下划线分隔大写字母(例如,HomePage变为home_page.html),从模型名称自动生成模板文件名。

1 个答案:

答案 0 :(得分:1)

这是预期的行为。在创建页面模型时不会自动创建模板文件/目录 - 您必须自己添加它。