扩展:Cargo
![]() 發佈狀態: 穩定版本 |
|
---|---|
![]() |
|
实现 | 特殊页面 , API , 解析器函数 |
描述 | 用来存储和查询包含在模板中的数据的扩展。 |
作者 | Yaron Koren <yaron57@gmail.com> (Yaron Koren讨论) |
最新版本 | 3.4 (2022年11月) |
兼容性政策 | master分支向後兼容。 |
MediaWiki | 1.35+ |
数据库更改 | 是 |
Composer | mediawiki/cargo |
表 | cargo_tables cargo_pages |
许可协议 | GNU通用公眾授權條款2.0或更新版本 |
下載 | 参见扩展:Cargo/下载与安装 |
示例 | 包含对#cargo_query的各种调用的页面 |
|
|
|
|
Quarterly downloads | 12 (Ranked 153rd) |
Public wikis using | 207 (Ranked 405th) |
翻譯Cargo扩展 | |
問題 | 尚未完成的工作 · 报告錯誤 |
Cargo是MediaWiki的一项扩展,可以提供轻量的方式来存储和查询数据,这些数据是通常通过信息框(infobox)等模板调用的。 Cargo在概念上类似于Semantic MediaWiki 扩展,但是有许多优点,比如容易安装,容易使用。
Cargo将所有的数据存在数据库表中,而这些表可以被MediaWiki自己的数据库(默认)或分开的数据替换。 在大多数情况下,每个模板都会将其数据存储在单个数据库表中,每个相关模板参数对应一列。 有少量例外:包含数组/列表以及包含地理位置的字段的处理会更复杂一些,这是因为大多数数据库系统缺乏对这些类型的原生支持。 多个模板也可以将它们的数据存储在同一个数据库表中。
这个扩展定义了许多解析器函数,以下三个最为重要:
#cargo_declare
- 位于模板的<noinclude>
部分,为表定义概要。#cargo_store
- 为Cargo的表存储一行,通常位于模板的<includeonly>
部分。#cargo_query
- 查询一个或多个Cargo数据表,使用SQL组件。
还定义了以下解析器函数:
#cargo_attach
- 定义一个模板加入其他模板声明的行。#cargo_compound_query
- 在一个位置显示多次查询结果。#cargo_display_map
- 显示一个单点的地图。#recurring_event
- 输出反复发生时间的日期,为了#cargo_store使用。
Cargo还定义了各种接口,用于查看和向下钻取此存储的数据。
Cargo使用MySQL和PostgreSQL数据库系统测试和工作。 理论上也支持SQLite,但是并没有充分测试,而且有可能无法正常工作。
Cargo扩展要求MediaWiki的版本至少为MediaWiki 1.33+。
本页顶部的导航框列举了一些关于Cargo的页面,可以了解更多Cargo的知识,以及如何工作、如何使用和如何安装。
參見
- 手册:在MediaWiki管理数据 – 概览和比较。
- DynamicPageList – 允許從頁面提取數據
- Semantic MediaWiki – 允許在頁面內儲存和查詢數據。
- WikiDB – 提供資料庫功能,有點類似於語義屬性。
- Wikibase – 作为维基数据项目的一部分,允许展示和维护结构性数据。
这个扩展包含在以下包和/或维基农场: 这不是一个权威的名单。一些维基农场/主机可能包含这个extension,即使它们没有在这里列出。经常检查您的维基农场/主机或包来确认。 |