gpt4 book ai didi

mysql - MediaWiki:调用模板、ParserFunctions 条件取决于外部数据值

转载 作者:行者123 更新时间:2023-11-29 00:24:59 25 4
gpt4 key购买 nike

我试图在我的 MediaWiki 页面的表格中显示来自 MySQL 数据库的数据。使用外部数据扩展函数#get_db_data 和#for_external_table 获取数据,效果很好。不过,我还想做两件事:

  • 使用获取的值作为模板名称:当数据库中的值为 x 时,则插入模板:X(或 {{X}})

  • 在使用 ParserFunctions 扩展的条件下使用(另一个)获取的值。具体来说,返回一个数字。小于100则显示在括号内,否则不显示。

这是目前的代码:

{{#get_db_data:
db=pravidla
|from=alch
|order by=nazev
|data=nazev=nazev,prima=prima,primaproc=prima_proc,sekunda=sekunda,sekundaproc=sekunda_proc,dominanta=dominanta
}}

{| class="wikitable sortable" style="border: solid 1px black"
|+ Tabulka přísad
|''Přísada''
|''Prima''
|''Sekunda''
|''Dominanta'' {{#for_external_table:<nowiki/>
{{!}}-
{{!}} {{{nazev}}}
{{!}} {{{prima}}} ({{{primaproc}}} %)
{{!}} {{{sekunda}}} ({{{sekundaproc}}} %)
{{!}} {{{dominanta}}} }}
|}

prima、sekunda 和 dominica 变量中的值应替换为具有相同名称的模板。 {{{{{prima}}}}}{{Lcb}}{{Lcb}}{{{prima}}}{{Rcb}}{{Rcb}} (其中 Lcb={ 和 Rcb=})起作用。

值在中间两个单元格的括号应该只在值小于 100(百分比)时显示,所以类似 {{#ifeq: {{{primaproc}}} | 100 | | ({{{primaproc}}} %) }} 应该是有序的,但尽管尝试了,但我还是没有运气。

感谢您阅读本文,欢迎提出任何见解。

最佳答案

我设法通过将外部数据扩展函数 #for_external_table 替换为 #display_external_table 来解决这两个问题。后者将检索到的数据作为变量传递给模板;当放置在单独的 Template:Table row 页面中时,相同的代码可以工作。所以解决方案看起来像这样:

原始页面,显示表格:

{{#get_db_data:
db=pravidla
|from=alch
|order by=nazev
|data=nazev=nazev,prima=prima,primaproc=prima_proc,sekunda=sekunda,sekundaproc=sekunda_proc,dominanta=dominanta
}}

{| class="wikitable sortable" style="border: solid 1px black"
|+ Tabulka přísad
|''Přísada''
|''Prima''
|''Sekunda''
|''Dominanta''
{{#display_external_table:
template=Table row
|data=nazev=nazev,prima=prima,primaproc=primaproc,sekunda=sekunda,sekundaproc=sekundaproc,dominanta=dominanta}}
|}

新建Template:Table row页面:

{{!}}-
{{!}} {{{nazev}}}
{{!}} {{ {{{prima}}} }} {{#ifeq: {{{primaproc}}} | 100 | | ({{{primaproc}}} %) }}
{{!}} {{ {{{sekunda}}} }} {{#ifeq: {{{sekundaproc}}} | 100 | | ({{{sekundaproc}}} %) }}
{{!}} {{ {{{dominanta}}} }}

现在,使用 prima、sekunda 和 dominica 值调用具有相同名称的模板和括号中百分比的条件显示就像一个魅力。

关于mysql - MediaWiki:调用模板、ParserFunctions 条件取决于外部数据值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19368162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com