跳转到主要内容

Datasette插件,用于输出iCalendar文件

项目描述

datasette-ics

PyPI Changelog Tests License

Datasette插件,支持使用SQL查询结果生成iCalendar .ics文件

安装

在Datasette相同的环境中安装此插件以启用.ics输出扩展。

$ pip install datasette-ics

用法

要创建iCalendar文件,您需要定义一个自定义SQL查询,该查询返回所需的一组列

  • event_name - 事件的简称
  • event_dtstart - 事件开始时间

以下列是可选的

  • event_dtend - 事件结束时间
  • event_duration - 事件的持续时间(可用作dtend的替代
  • event_description - 事件的更详细描述
  • event_uid - 此事件的全球唯一标识符
  • event_tzid - 事件时区,例如 America/Chicago

返回这些列的查询可以通过添加.ics扩展名作为ics源返回。

演示

此SQL查询计算加利福尼亚州半月湾Pillar Point每天最低潮位。

由于查询返回event_nameevent_dtstartevent_tzid列,因此它生成此ICS源。如果您在苹果日历等日历应用程序中订阅它,您将获得如下内容

Apple Calendar showing low tides at Pillar Point during a week

使用预定义查询

Datasette的预定义查询机制可以用于配置日历。如果预定义查询定义中有一个title,它将用作日历的标题。

以下是一个示例,使用metadata.yaml文件定义

databases:
  mydatabase:
    queries:
      calendar:
        title: My Calendar
        sql: |-
          select
            title as event_name,
            start as event_dtstart,
            description as event_description
          from
            events
          order by
            start
          limit
            100

这将导致在http://localhost:8001/mydatabase/calendar.ics生成一个日历源

项目详情


下载文件

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

源分布

datasette-ics-0.5.2.tar.gz (8.3 kB 查看哈希)

上传时间

构建分布

datasette_ics-0.5.2-py3-none-any.whl (8.9 kB 查看哈希)

上传时间 Python 3

由以下支持