跳转到主要内容

11x Wagtail Blog

项目描述

11x Wagtail Blog

PyPI Build Supported Python versions Documentation Downloads

11x Wagtail Blog

11x-wagtail-blog 是一个实现wagtail站点基本博客功能的wagtail应用。该项目最初是作为实现 11x.engineering 的博客功能的一个实现,但由于它打算用作一系列文章的第一篇,因此已经开源并在此发布。它的目的是演示如何开发并发布到PyPI的完整功能包。

快速入门

安装

pip install 11x-wagtail-blog

x11x_wagtail_blog 添加到您的 INSTALLED_APPS

INSTALLED_APPS = [
    ...,
    'x11x_wagtail_blog',
    ...,
]

由于此包仅提供每个博客应用的标准功能,您需要定义自己的页面模型并从 ExtensibleArticlePage 继承它们

>>> from x11x_wagtail_blog.models import ExtensibleArticlePage
>>> from wagtail.admin.panels import FieldPanel
>>> from wagtail.blocks import TextBlock
>>> from wagtail.fields import StreamField
>>> class MyArticlePage(ExtensibleArticlePage):
...     body = StreamField([
...         ("text", TextBlock()),
...     ], use_json_field=True)
...
...     content_panels = ExtensibleArticlePage.with_body_panels([
...         FieldPanel("body"),
...     ])

这可以在任何有效的Wagtail应用中完成。

接下来,按照常规生成迁移

python manage.py makemigrations
python manage.py migrate

您将需要定义一个模板。默认模板是 x11x_wagtail_blog/article_page.html,但您应该覆盖 get_template() 方法以返回您自己的模板。

<!DOCTYPE html>
<html>
  <head>...</head>
  <body>
    <h1>{{ self.title }}</h1>

    {% include_block self.body %}

    <h2>About the authors</h2>
    {% for author in self.authors %}
    {% include "myblog/about_the_author_section.html" with author=author.value %}
    {% endfor %}

    <h2>Related Articles</h2>
    <ul>
    {% for article in self.related_articles %}
    <li><a href="{% pageurl article %}">{{ article.title }}</a></li>
    {% endfor %}
    </ul>
  </body>
</html>

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

11x_wagtail_blog-0.2.0.tar.gz (14.4 kB 查看哈希值)

上传时间

构建分发

11x_wagtail_blog-0.2.0-py3-none-any.whl (15.9 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面