跳转到主要内容

Wagtail CMS的新闻/博客插件

项目描述

Wagtail的一个插件,提供了新闻/博客功能。

安装

使用pip安装

pip install wagtailnews

它与Wagtail 5.2及更高版本兼容。对于Wagtail的旧版本,请参阅过往发布版本。

快速入门

为您的应用程序创建继承自相关 wagtailnews 模型的新闻模型

from django.db import models

from wagtail.admin.panels import FieldPanel
from wagtail.fields import RichTextField
from wagtail.models import Page

from wagtailnews.models import NewsIndexMixin, AbstractNewsItem, AbstractNewsItemRevision
from wagtailnews.decorators import newsindex


# The decorator registers this model as a news index
@newsindex
class NewsIndex(NewsIndexMixin, Page):
    # Add extra fields here, as in a normal Wagtail Page class, if required
    newsitem_model = 'NewsItem'

    featured_news_item = models.ForeignKey(
        'NewsItem',
        null=True,
        blank=True,
        on_delete=models.SET_NULL,
        related_name='+',
    )

    content_panels = Page.content_panels + [
        FieldPanel('featured_news_item'), # This will set up a chooser for selecting a news item
    ]


class NewsItem(AbstractNewsItem):
    # NewsItem is a normal Django model, *not* a Wagtail Page.
    # Add any fields required for your page.
    # It already has ``date`` field, and a link to its parent ``NewsIndex`` Page
    title = models.CharField(max_length=255)
    body = RichTextField()

    panels = [
        FieldPanel('title', classname='full title'),
        FieldPanel('body', classname='full'),
    ] + AbstractNewsItem.panels

    def __str__(self):
        return self.title


class NewsItemRevision(AbstractNewsItemRevision):
    newsitem = models.ForeignKey(NewsItem, related_name='revisions', on_delete=models.CASCADE)

旧文档

Wagtail新闻的文档 已严重过时,但可能仍可用于参考。

项目详情


下载文件

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

源代码发行版

wagtailnews-5.2.0.tar.gz (26.4 kB 查看散列)

上传时间 源代码

构建发行版

wagtailnews-5.2.0-py3-none-any.whl (31.1 kB 查看散列)

上传时间 Python 3

支持者