Шаблон:GetField/doc: различия между версиями
Pok (обсуждение | вклад) м Замена текста — «GeneratorId» на «getAll» |
Pok (обсуждение | вклад) Нет описания правки |
||
| (не показаны 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|keyPath}} | * {{tji|GetField|функция{{=}}get|id|pagePath|keyPath}} | ||
| Строка 45: | Строка 45: | ||
=== getTpl === | === getTpl === | ||
Строит вызов шаблона для одного id | Строит вызов шаблона для одного id передавая в него развёрнутые поля записи. | ||
Использование: | Использование: | ||
| Строка 106: | Строка 106: | ||
=== searchStore / searchStoreTpl === | === searchStore / searchStoreTpl === | ||
Эти функции находят прототипы или компоненты содержащие указанный id, используя [[Участник:IanComradeBot/prototype_store.json]] | Эти функции находят прототипы или компоненты содержащие указанный id, используя [[Участник:IanComradeBot/prototype_store.json]] или [[Участник:IanComradeBot/component_store.json]]. | ||
Использование: | Использование: | ||
| Строка 126: | Строка 126: | ||
}} | }} | ||
=== getAll / | === getAll / getAllTpl === | ||
Эти функции получают все id прототипов или компонентов. | Эти функции получают все id прототипов или компонентов. | ||
Использование: | Использование: | ||
* {{tji|GetField|функция{{=}}getAll|pagePath}} | * {{tji|GetField|функция{{=}}getAll|pagePath}} | ||
* {{tji|GetField|функция{{=}} | * {{tji|GetField|функция{{=}}getAllTpl|pagePath|template}} | ||
<code>getAll</code> по умолчанию возвращает JSON-массив id. | <code>getAll</code> по умолчанию возвращает JSON-массив id. | ||
<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|функция{{=}} | * {{tji|GetField|функция{{=}}getAllTpl|component/staticPrice.json|component/staticPrice/wrapper}} -> выводит все id сущностей с этим компонентом обёрнутым в шаблон {{шс|component/staticPrice/wrapper}} | ||
{{Параметры| | {{Параметры| | ||
{{Параметры/строка|1|Путь до JSON-страницы.|Да}} | {{Параметры/строка|1|Путь до JSON-страницы.|Да}} | ||
{{Параметры/строка|2|Имя шаблона для <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> | * Функции с <code>searchStore</code> работают только с генераторными страницами и хранилищами, где структура данных уже подготовлена под поиск по id. | ||
* <code>json</code> и <code>jsonList</code> ожидают корректный JSON; если строка не разбирается, результат будет пустым. | * <code>json</code> и <code>jsonList</code> ожидают корректный JSON; если строка не разбирается, результат будет пустым. | ||