grafl.io 集成到 Wagtail CMS
项目描述
Wagtail-Grafl
使用 Grafl.io 绘图服务在 Wagtail streamfields 中创建图表。
安装
从 PyPI 安装
pip install wagtail-grafl
然后,将以下内容添加到您的项目 INSTALLED_APPS
中。
'wagtail_grafl',
开箱即用
目前 wagtail-grafl
中有三种块可用。
GraflBlock
用于创建基本 Grafl 图的常用块。
它包含一个用于输入 Grafl 图表数据的单个 JSON 字段。它继承自 BaseGraflBlock
。
JsonBlock
简单格式化的 JSON 字段,具有基本验证,并包含在 GraflBlock
中。
BaseGraflBlock
提供了 BaseGraflBlock
以便于扩展 wagtail-grafl
并构建您自己的定制 Grafl 块。
它提供了需要在继承自本类的任何块中重写的 get_grafl_data
方法。
get_grafl_data
方法应返回一个 Grafl 兼容数据的字典。
这使得自定义块能够从其他来源获取数据并程序化地生成 Grafl 图。
设置
- WAGTAIL_GRAFL_PLOT_DEFAULTS - 一个可选的默认参数字典,它将与块的 grafl 数据合并。这对于指定应在所有 Grafl 图块中保持一致的参数很有用。
示例用法
将 StreamBlock 添加到 Wagtail 页面上的 StreamField
from wagtail import blocks
from wagtail_grafl.blocks import GraflBlock
class MyStreamBlock(blocks.StreamBlock):
grafl_plot = GraflBlock()
将 StreamBlock
添加到 Wagtail 页面上的 StreamField
from wagtail.admin.edit_handlers import StreamFieldPanel
from wagtail.fields import StreamField
from wagtail.models import Page
from .blocks import MyStreamBlock
class MyPage(Page):
body = StreamField(MyStreamBlock(), null=True)
content_panels = Page.content_panels + [
StreamFieldPanel('body'),
]
然后在页面模板中
{% load static wagtailcore_tags %}
{% include_block page.body %}
关于 Grafl
Grafl 是一种绘图服务,可以用于从基本 JSON 数据生成图表。它基于 Plotly,免费使用且非常灵活。
项目详情
关闭
wagtail_grafl-0.0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 751f8a5089df1a25a4b6c804522f49a543f525e9be788ca8db3ed58fba2d1caa |
|
MD5 | 48ea4ded12ed3cd6325835996c817357 |
|
BLAKE2b-256 | be8d40c29f0e25d25fb69f6c981674110277e117b21b5401c22ed70a1b8277b4 |
关闭
wagtail_grafl-0.0.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 17f2677cccd0c09fa8d67c7c336076a30b6ca4c439c7945072d9a3c40965611c |
|
MD5 | bd1a4c85be7d21bb49cda23bf9b892e8 |
|
BLAKE2b-256 | 409688840c06ecaf32771936226781d36918d9e16a808c696c331e4fac1e17d1 |