Шаблон:If empty
Овај шаблон користи Lua модул: |
Ово је {{If empty}} шаблон. Не треба га поистовећивати са шаблоном {{Ifempty}}.
- Ажурирање 23. децембра 2014. (на енглеској Википедији): Овај шаблон је могао користити максимално 9 параметара. Овај лимит је уклоњен.
Овај шаблон је намењен за употребу у другим шаблонима. Обрађује било који број параметара и враћа први пронађени који је дефинисан и који није празан. Ако ниједан овакав параметар није пронађен, шаблон неће вратити никакав резултат. Типична употреба је следећа:
{{If empty |{{{лого|}}} |{{{датотека|}}} |{{{слика|}}} |default.svg}}
- („Врати параметар {{{лого|}}} уколико има неку вредност; ако параметар {{{лого|}}} није дефинисан, врати параметар {{{датотека|}}} уколико има неку вредност; ако параметар {{{датотека|}}} није дефинисан, врати параметар {{{слика|}}} уколико има неку вредност; у осталим случајевима врати „default.svg”.”)
Оваква употреба враћа први од параметара лого, датотека и слика (редом) који је дефинисан и који није празан; у осталим случајевима враћа „default.svg”.
Образложење
уредиМедијавики подразумевана функција за параметре не враћа подразумевану вредност за празне параметре. То јест, {{{лого|default.svg}}}
не враћа „default.svg” уколико је шаблон написан на следећи начин: {{шаблон|лого=}}
.
Уобичајено алтернативно решење за један параметар је:
{{#if:{{{лого|}}} |{{{лого}}} |default.svg}}
- („Ако параметар {{{лого}}} има вредност, врати параметар {{{лого}}}; у осталим случајевима врати „default.svg”.”)
Међутим, ово постаје све више и више комплексно како број параметара који захтевају проверу расте:
{{#if:{{{лого|}}} |{{{лого}}} |{{#if:{{{датотека|}}} |{{{датотека}}} |{{#if:{{{слика|}}} |{{{слика}}} |default.svg}} }} }}
- („Ако параметар {{{лого}}} има вредност, врати параметар {{{лого}}}; ако параметар {{{лого}}} нема вредност и ако параметар {{{датотека}}} има вредност, врати параметар {{{датотека}}}; ако параметар {{{датотека}}} нема вредност и ако параметар {{{слика}}} има вредност, врати параметар {{{слика}}}; у осталим случајевима врати „default.svg”.”)
У овим случајевима, {{if empty}} омогућава коришћење једноставније синтаксе, која за случај изнад гласи:
{{if empty |{{{лого|}}} |{{{датотека|}}} |{{{слика|}}} |default.svg}}
Коришћење усправне црте
уредиПараметри коришћени са шаблоном {{if empty}} морају бити са усправном цртом — тј. морају укључивати симбол усправну црту (линију) („ | ”) као пратећи карактер (симбол, знак, глиф) — тако да празан или недефинисан параметар не би био третиран као текст и враћен погрешно. Дакле, на пример, {{{лого|}}}
, {{{датотека|}}}
и {{{слика|}}}
требају бити коришћени уместо {{{лого}}}
, {{{датотека}}}
и {{{слика}}}
(редом) у примерима изнад.
Примери
уредиКод | Резултат | |
{{if empty}} | Враћа празан низ (ниску, стринг). | |
{{if empty|један}} | један | Враћа први параметар који је дефинисан и који није празан. |
{{if empty|један|два}} | један | |
{{if empty|један|два|три|четири}} | један | |
{{if empty||два}} | два | Први параметар је празан/недефинисан, тако да се исти прескаче. |
{{if empty||два|три|четири}} | два | |
{{if empty||два||четири}} | два | |
{{if empty||||||||||десет}} | десет | За разлику од претходних верзија шаблона, овај шаблон више није ограничен на само 9 параметара. |
{{if empty|}} | Једини параметар који постоји је празан или недефинисан, тако да се враћа празан низ (ниска, стринг). | |
{{if empty||||}} | Враћа празан низ (ниску, стринг). | |
{{if empty|{{{1|}}}|{{{2|}}}|три}} | три | |
{{if empty|{{{1}}}|{{{2}}}|три}} | {{{1}}} | Без усправних црта после имена првих двају параметара („1” и „2”), тако да се први од њих враћа као обични текст („{{{1}}}”). |
{{if empty|{{{лого|}}}|два}} | два | |
{{if empty|{{{лого}}}|два}} | {{{лого}}} | Без усправних црта после имена првог параметра („лого”), тако да се исти враћа као обични текст („{{{лого}}}”). |
{{if empty|p=q}} | Шаблон идентификује параметре које прима као параметре 1 до 9, а не користећи имена као што је „p” и сл. |
Види још
уреди- {{if all}}
- {{if either}}
- en:Help:Parameter default