sphinx的htsql扩展

sphinxcontrib-htsql的Python项目详细描述


概述

sphinxcontrib-htsql是嵌入HTSQL查询的扩展 在Sphinx文档中。

你可以在 http://htsql.org/doc/overview.html#htsql-in-a-nutshell。更多 示例,请参见源发行版中的demo目录。

本软件由kirill simonov(Prometheus Research, LLC)编写 并在BSD许可下发布。

用法

若要启用此扩展,请将以下行添加到conf.py

extensions.append('sphinxcontrib.htsql')

您还需要指定htsql服务的地址:

htsql_root = 'http://demo.htsql.org'

现在可以使用^{tt4}将htsql查询添加到任何sphinx文档$ 指令:

.. htsql:: /school?campus='old'

此指令执行查询并插入复合块 由查询字符串和表格形式的查询输出组成。

如果查询跨越多行,则可以在指令中写入 正文:

.. htsql::

   /school.define(num_dept := count(department))
          {code, num_dept}?num_dept>3

如果要用另一个查询的输出显示一个查询,请使用 output选项。它有助于描述破坏性操作, 尚未实现功能或转义规则。你需要引用 空白和特殊字符手动:

.. htsql:: /school?campus='north'
   :output: /school?campus='south'

通常,htsql指令要求查询有效。使用 error选项,指示查询无效,并且您希望 显示错误消息:

.. htsql:: /school{code, title}
   :error:

通常,查询是通过指向htsql的链接呈现的 服务。使用no-link选项禁用此功能:

.. htsql:: /school?exists(department)
   :no-link:

使用no-output选项呈现查询,但不呈现输出:

.. htsql:: /school[ns]
   :no-output:

使用no-input选项呈现查询输出,但不呈现查询 本身:

.. htsql:: /school[ns]
   :no-input:

通常,查询输出呈现为表。使用选项raw到 使输出无格式:

.. htsql:: /school[ns]/:json
   :raw:

使用cut选项将查询输出截断为给定的数字 一排排的。此选项同时适用于表格和原始输出:

.. htsql:: /school
   :cut: 3

参考

指令

htsql-root

指定htsql服务的地址。

此指令重写htsql_root配置参数 对于当前文档的其余部分。

此指令没有正文和选项。

htsql

插入htsql查询的输出。

查询可以指定为指令的参数,或者 多行查询)作为指令内容。

此指令呈现为具有两个条目的复合块:

  • 带有查询字符串和指向htsql的链接的文本块 服务。
  • 具有查询输出的表。

选项:

output
用作输出块源的查询。
error
接受无效查询并在 输出块。
no-link
不要将查询块链接到htsql服务。
no-input
不要呈现查询块。
no-output
不要渲染输出块。
raw
使输出无格式。
cut
将输出截断为给定的行数。

配置参数

htsql_root
htsql服务的地址。

css类

htsql-io
包装htsql指令的输出。
htsql-input
包装查询块。
htsql-output
包装输出块。
htsql-link
包装到htsql服务的链接。
htsql-arrow-link
用指向htsql服务的链接包装箭头符号。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
图形Java仿射变换以旋转通用路径   IntelliJ IDEA中的java代码标记为编译器错误,在Eclipse中可以正常工作   java ArrayList的containsAll返回了错误的值   如何在安卓中的片段活动中添加java代码   java通过使用netbeans调用jbutton,将带有行的jbutton添加到jtable中   java在更新arrayAdapter/listView之前更新最终列表   java如何在另一个项目中导入包含AspectJ方面和注释的项目   为什么我的java布尔测试总是失败?   Eclipse中的java自动激活   在Bluetooth for Java(更具体地说是Android)之上是否有TCP/IP协议栈实现?   java Android Studio通过intent传递ArrayList并填充ListView