跳转到主要内容

Flask扩展,为您的网站添加漂亮的博客

项目描述

Canonical博客扩展

此扩展允许您为Flask应用程序添加一个简单的前端部分。所有文章都通过JSON API从Canonical的Wordpress后端获取。

此扩展提供3个路由的蓝图

  • "/": 返回文章列表
  • "/": 文章页面
  • "/feed": 为页面提供RSS订阅。

安装

要将此扩展作为项目依赖项安装,您可以使用PIP;

pip3 install canonicalwebteam.blog

有关更多信息,请参阅pip安装文档。

用法

本地开发

对于本地开发,建议使用我们的网站项目之一(如ubuntu.com)测试此模块。有关更多信息,请参阅本指南(仅限内部使用)

模板

模块期望在blog/index.htmlblog/article.htmlblog/blog-card.htmlblog/archives.htmlblog/upcoming.htmlblog/author.html中找到HTML模板。

这些模板的示例可以在https://github.com/canonical-websites/jp.ubuntu.com/tree/master/templates/blog找到。

用法

在您的应用程序中,您可以执行以下操作

import flask
import talisker.requests
from flask_reggie import Reggie
from canonicalwebteam.blog import BlogViews, build_blueprint, BlogAPI

app = flask.Flask(__name__)
Reggie().init_app(app)
session = talisker.requests.get_session()

blog = build_blueprint(
    BlogViews(
        api=BlogAPI(session=session),
    )
)
app.register_blueprint(blog, url_prefix="/blog")

您可以通过以下可选参数自定义博客

blog = build_blueprint(
    BlogViews(
        blog_title="Blog",
        blog_path="blog",
        tag_ids=[1, 12, 112],
        exclude_tags=[26, 34],
        per_page=12,
        feed_description="The Ubuntu Blog Feed",
        api=BlogAPI(
            session=session,
            use_image_template=True,
            thumbnail_width=330,
            thumbnail_height=185,
        ),
    )
)

测试

所有测试都可以通过./setup.py test运行。

重新生成固定数据

所有API调用都通过VCR捕获并保存为fixtures目录中的固定数据。如果API更新,可以轻松更新所有固定数据,只需删除fixtures目录并重新运行测试。

要执行此操作,请运行rm -rf fixtures && ./setup.py test

项目详情


发布历史 发布通知 | RSS订阅

下载文件

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

源分发

canonicalwebteam.blog-6.4.2.tar.gz (13.3 kB 查看哈希值)

上传于 源代码

构建版本

canonicalwebteam.blog-6.4.2-py3-none-any.whl (15.1 kB 查看哈希)

上传于 Python 3

由以下支持