Шаблон:GetField/doc: различия между версиями

м Замена текста — «GeneratorId» на «getAll»
Нет описания правки
 
(не показаны 4 промежуточные версии этого же участника)
Строка 11: Строка 11:
* <code>Участник:IanComradeBot/prototype/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/prototype/tag.json]])
* <code>Участник:IanComradeBot/prototype/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/prototype/tag.json]])


__TOC__
== Основные функции ==
== Основные функции ==


Строка 17: Строка 18:


Использование:
Использование:
* {{tji|GetField|функция{{=}}get|id|pagePath}}
* {{tji|GetField|функция{{=}}get|id|pagePath|keyPath}}
* {{tji|GetField|функция{{=}}get|id|pagePath|keyPath}}


Строка 45: Строка 45:


=== getTpl ===
=== getTpl ===
Строит вызов шаблона для одного id и сразу обрабатывает его через препроцессор. Помимо <code>id</code>, в шаблон передаются развёрнутые поля записи.
Строит вызов шаблона для одного id передавая в него развёрнутые поля записи.


Использование:
Использование:
Строка 106: Строка 106:


=== searchStore / searchStoreTpl ===
=== searchStore / searchStoreTpl ===
Эти функции находят прототипы или компоненты содержащие указанный id, используя [[Участник:IanComradeBot/prototype_store.json]] и [[Участник:IanComradeBot/component_store.json]].
Эти функции находят прототипы или компоненты содержащие указанный id, используя [[Участник:IanComradeBot/prototype_store.json]] или [[Участник:IanComradeBot/component_store.json]].


Использование:
Использование:
Строка 126: Строка 126:
}}
}}


=== getAll / GeneratorTplId ===
=== getAll / getAllTpl ===
Эти функции получают все id прототипов или компонентов.
Эти функции получают все id прототипов или компонентов.


Использование:
Использование:
* {{tji|GetField|функция{{=}}getAll|pagePath}}
* {{tji|GetField|функция{{=}}getAll|pagePath}}
* {{tji|GetField|функция{{=}}GeneratorTplId|pagePath|template}}
* {{tji|GetField|функция{{=}}getAllTpl|pagePath|template}}


<code>getAll</code> по умолчанию возвращает JSON-массив id.  
<code>getAll</code> по умолчанию возвращает JSON-массив id.  
<code>GeneratorTplId</code> вызывает шаблон для каждого id в виде <code><nowiki>{{Имя шаблона|id=...|...поля записи...}}</nowiki></code>.
<code>getAllTpl</code> вызывает шаблон для каждого id в виде <code><nowiki>{{Имя шаблона|id=...|...поля записи...}}</nowiki></code>.


Примеры:
Примеры:
* {{tji|GetField|функция{{=}}getAll|component/staticPrice.json}} -> выводит все id сущностей с этим компонентом в формате JSON
* {{tji|GetField|функция{{=}}getAll|component/staticPrice.json}} -> выводит все id сущностей с этим компонентом в формате JSON
* {{tji|GetField|функция{{=}}GeneratorTplId|component/staticPrice.json|component/staticPrice/wrapper}} -> выводит все id сущностей с этим компонентом обёрнутым в шаблон {{шс|component/staticPrice/wrapper}}
* {{tji|GetField|функция{{=}}getAllTpl|component/staticPrice.json|component/staticPrice/wrapper}} -> выводит все id сущностей с этим компонентом обёрнутым в шаблон {{шс|component/staticPrice/wrapper}}


{{Параметры|
{{Параметры|
{{Параметры/строка|1|Путь до JSON-страницы.|Да}}
{{Параметры/строка|1|Путь до JSON-страницы.|Да}}
{{Параметры/строка|2|Имя шаблона для <code>GeneratorTplId</code>.|Только для <code>GeneratorTplId</code>}}
{{Параметры/строка|2|Имя шаблона для <code>getAllTpl</code>.|Только для <code>getAllTpl</code>}}
{{Параметры/строка|replace|Строка замены для <code>getAll</code>. Если задана, результат выводится построчно вместо JSON-массива.|Нет}}
{{Параметры/строка|replace|Строка замены для <code>getAll</code>. Если задана, результат выводится построчно вместо JSON-массива.|Нет}}
}}
}}
Строка 202: Строка 202:
* Параметр <code>keyPath</code> поддерживает доступ к вложенным полям и индексам.
* Параметр <code>keyPath</code> поддерживает доступ к вложенным полям и индексам.
* <code>getTpl</code> и <code>searchIdTpl</code> удобны, когда нужно не получить сырые данные, а сразу отрендерить карточку или другой шаблон.
* <code>getTpl</code> и <code>searchIdTpl</code> удобны, когда нужно не получить сырые данные, а сразу отрендерить карточку или другой шаблон.
* Функции с <code>Generator</code> работают только с генераторными страницами и хранилищами, где структура данных уже подготовлена под поиск по id.
* Функции с <code>searchStore</code> работают только с генераторными страницами и хранилищами, где структура данных уже подготовлена под поиск по id.
* <code>json</code> и <code>jsonList</code> ожидают корректный JSON; если строка не разбирается, результат будет пустым.
* <code>json</code> и <code>jsonList</code> ожидают корректный JSON; если строка не разбирается, результат будет пустым.