帮助:SMW/Format说明
前言
- 鉴于SMW本身对结果输出有很多模式,此页面单独为这些模式进行解释和说明。
- SMW官方文档没有中文且非常散碎,本页面的更新会比较缓慢,有错误和描述不清的地方欢迎在页面评论区留言。
- 官方文档:https://www.semantic-mediawiki.org/wiki/Help:Result_formats
Template(模板模式)
- 通常情况下通过
#ask
展现的查询结果会以表格形式输出。而使用模板进行输出则更加的灵活。 - 官方文档:https://www.semantic-mediawiki.org/wiki/Help:Using_templates
主要参数
通常在查询的时候通过定义 |format=template
来将查询结果使用模板进行输出。
参数 | 值 | 说明 |
---|---|---|
template |
文本 | 定义将结果传递给哪个模板(无需在名称前使用Template :) |
introtemplate |
文本 | (可选)在结果输出之前调用一次的模板的名称(例如,定义表头) |
outrotemplate |
文本 | (可选)输出结果后调用一次的模板的名称(例如,定义用于关闭表的Wiki标记) |
named args |
布尔值(yes或者no) | 如果未设置或no,则将参数传递给不带名称的模板(例如:{{{1}}})。如果设置为yes,则将使用名称传递参数(例如:{{{技能名称}}}) |
userparam |
文本/wikitext | 定义一个参数用于传送到模板,模板中引用的写法为 {{{#userparam}}}(SMW3.0+版本) |
无传参名的模式
{{#ask:[[分类:幻书]] |?书籍名 |?稀有度 |?职业 |?书籍类型 |link=none |order=desc |sort=稀有度,名称,生命能力 |template=幻书图鉴/子 |headers=hide |format=template |limit=1000 }}
其中属性 书籍名
稀有度
职业
书籍类型
对应 "幻书图鉴/子" 模板中的第2个参数{{{2}}} 第3个参数{{{3}}} 第4个参数{{{4}}} 第5个参数{{{5}}} ,第1个参数{{{1}}} 默认为页面名
有传参名的模式
{{#ask:[[分类:幻书]] |?书籍名=书籍名 |?稀有度=稀有度 |?职业=职业 |?书籍类型=书籍类型 |named args=yes |link=none |order=desc |sort=稀有度,名称,生命能力 |template=幻书图鉴/子 |headers=hide |format=template |limit=1000 }}
通过 属性 = 传参名
来对应属性值和模板中定义的传参名。如果不额外定义,则属性名和传参名一致。
一定要有 |named args=yes
否则,为属性定义的传参名是不生效的。
Gallery(画廊模式)
- 对文件管理要求比较高,上传的图片需要做好分类管理。
- 官方文档:https://www.semantic-mediawiki.org/wiki/Help:Gallery_format
语法:
{{#ask: [[分类:游戏ICON]] | format=gallery}}
效果:
Slideshow(幻灯片模式)
Tree(模式)
主要参数
参数 | 同理 | 参数 | 默认 | 说明 |
---|---|---|---|---|
propsep | 文本 | The separator between the properties of a result entry | ||
valuesep | 文本 | The separator between the values for a property of a result | ||
template | 文本 | 空 | 定义将结果传递给哪个模板(无需在名称前使用Template :) | |
named args | namedargs | yes/no | no | 如果未设置或no,则将参数传递给不带名称的模板(例如:{{{1}}})。如果设置为yes,则将使用名称传递参数(例如:{{{技能名称}}}) |
userparam | - | 文本 | 空 | 定义一个参数用于传送到模板 |
class | - | 文本 | 空 | Specify an additional cascading style sheet class |
introtemplate | - | 文本 | 空 | (可选)在结果输出之前调用一次的模板的名称(例如,定义表头) |
outrotemplate | - | 文本 | 空 | (可选)输出结果后调用一次的模板的名称(例如,定义用于关闭表的Wiki标记) |
sep | - | 文本 | , | 输出结果之间的分隔符 |
parent | - | 文本 | 空 | 指定为父级页面的属性 |
root | - | 文本 | 空 | The root page of the tree |
start level | - | whole number | 1 | The start level of the tree, e.g. for integrating it into another tree |
template arguments | - | 文本 | 空 | Sets how the named arguments are passed to the template |
语法
{{#ask:[[分类:武器]]
|?武器名称
|?攻击
|?性能
|?锻造1
|?锻造2
|?锻造3
|?锻造4
|?锻造5
|?锻造6
|?锻造总值
|?特性
|format=tree
|root=大剑
|parent=父级
|template=衍生表/行
}}
其中最最重要的是,被指定为父级的属性,需要修改数据模型为page。[[Has type::Page]]
效果