You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何访问由#set设置的Semantic MediaWiki属性?

Semantic MediaWiki模板属性访问与默认值设置

核心问题解答

  • 无法通过{{{Is foo}}}读取#set设置的语义属性值,因为{{{参数名}}}仅对应模板调用时传入的页面参数,而非语义属性。要访问语义属性,需使用Semantic MediaWiki的#show解析器函数:
    • 在模板内部或调用模板的页面中,通过{{#show:{{FULLPAGENAME}}|?Is foo}}可获取当前页面的Is foo属性值。
  • 针对“给缺失属性的页面设置默认值N”的需求,正确写法如下:
    {{#if:{{#show:{{FULLPAGENAME}}|?Is foo|default=}}|
      <!-- 属性已存在,不执行操作 -->
    |
      {{#set:Is foo=N}}
    }}
    
    逻辑说明:利用#show的default参数在属性不存在时返回空值,配合#if判断——若为空则执行#set设置默认值。

常见误区修正

  • 你之前的代码{{#if:{{{Is foo|}}}{{{Is foo|}}}|{{#set:Is foo=N}}存在两个问题:
    1. 仅判断模板参数Is foo是否存在,而非语义属性;
    2. 语法不完整,缺少闭合的}}。

内容的提问来源于stack exchange,提问作者MothOnMars

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 22:15:55