代码之家  ›  专栏  ›  技术社区  ›  MavidDeyers

Mediawiki-将空属性从表单传输到模板

  •  0
  • MavidDeyers  · 技术社区  · 5 年前

    我得到了一个具有不同属性的Mediawiki表单。如果我有一个可选的文本字段大部分时间都是空的。我的问题是,即使我在默认情况下用一个空字符串填充我的文本字段,它也不会被传输到模板并生成难看的人工制品(缺少引用而不是空白字段)。

    是否有任何方法可以确保将字段传输到模板?

    我的表格摘录:

    ! Priority:
    |{{{field|Priority|input type=category|default=High|top 
    category=Priority|height=85|hideroot=on}}}
    |-
    ! Date:
    | {{{field|Date|input type=datepicker|default= {{CURRENTYEAR}}/
    {{CURRENTMONTH}}/{{CURRENTDAY}} }}}
    ! Comment:
    |{{{field|Comment|input type=text|default=" "|height=85|hideroot=on}}}
    |}
    

    它生成模板:

    {{Template
    |Priority=High
    |Date=01/01/1970 
    }}
    

    {{Template
    |Priority=High
    |Date=01/01/1970
    |Comment=
    }}
    

    如果签入模板,我尝试了这个方法,但是如果属性为null,则显示{{{Comment}}}}:

    ! [[Attribut:Comment| Comment]] | [[Comment::{{{Comment}}}
    |{{#if:{{{Attribut:Comment}}}|{{{Comment}}}| }}]] 
    
    0 回复  |  直到 5 年前
        1
  •  1
  •   Collie-IT Anne K. Frey    5 年前

    问题是空白。您可以将默认设置为>non<并检查是否为注释字符串>non<。

    ! Comment:
    |{{{field|Comment|input type=text|default="non"|height=85|hideroot=on}}}
    |}
    

    另一个解决方案是使用 ParserFunctions 尤其是if功能

    {{#if:{{{1|}}}|You entered text in variable 1|There is no text in variable 1 }}