Шаблон:Сущность/doc: различия между версиями
Pok (обсуждение | вклад) Новая страница: «{{docpage}} {{OnLua|Сущность|module1=Сущность/поля}} Модуль предназначен для вывода блоков сущности по её id. Основная его настройка делается не в самом вызове модуля, а в шаблонах сущностей и компонентов вида <code>component/...</code>, <code>prototype/...</code> и их вариантах <code>/store</code>....» |
Pok (обсуждение | вклад) Нет описания правки |
||
| (не показано 6 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
{{docpage}} | {{docpage}} | ||
{{OnLua|Сущность|module1=Сущность/поля}} | {{OnLua|Сущность|module1=Сущность/поля}} | ||
Модуль предназначен для вывода блоков сущности по её id. Основная его настройка делается не в самом вызове модуля, а в шаблонах сущностей и компонентов вида <code>component/...</code>, <code>prototype/...</code> и их вариантах <code>/store</code>. | Модуль предназначен для вывода блоков сущности по её id. Основная его настройка делается не в самом вызове модуля, а в шаблонах сущностей и компонентов вида <code>component/...</code>, <code>prototype/...</code> и их вариантах <code>/store</code>. Используется на страницах сущностей см. [[:Категория:Сущности]]. | ||
Поля берутся из json страниц | Поля берутся из json страниц | ||
* <code>Участник:IanComradeBot/component/название</code> (пример: [[Участник:IanComradeBot/component/ | * <code>Участник:IanComradeBot/component/название</code> (пример: [[Участник:IanComradeBot/component/Access.json]]) | ||
* <code>Участник:IanComradeBot/prototype/название</code> (пример: [[Участник:IanComradeBot/prototype/ | * <code>Участник:IanComradeBot/prototype/название</code> (пример: [[Участник:IanComradeBot/prototype/Tag.json]]) | ||
Для подпроектов | Для подпроектов | ||
* <code>Участник:IanComradeBot/component/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/component/ | * <code>Участник:IanComradeBot/component/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/component/Access.json]]) | ||
* <code>Участник:IanComradeBot/prototype/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/prototype/ | * <code>Участник:IanComradeBot/prototype/Проект/название</code> (пример: [[Участник:IanComradeBot/Goob/prototype/Tag.json]]) | ||
== Как устроен шаблон сущности == | == Как устроен шаблон сущности == | ||
| Строка 50: | Строка 50: | ||
Если один и тот же режим содержит несколько полей, они просто перечисляются отдельными параметрами. Это лишь пример, лучше получать обрабатывать переданные параметры, чтобы они менялись взависимости от сущности. {{ссылка на раздел|#Какие параметры получает шаблон}} | Если один и тот же режим содержит несколько полей, они просто перечисляются отдельными параметрами. Это лишь пример, лучше получать обрабатывать переданные параметры, чтобы они менялись взависимости от сущности. {{ссылка на раздел|#Какие параметры получает шаблон}} | ||
<div style='display: inline-block;'> | |||
<inputbox> | |||
type=create | |||
editintro=Шаблон:Editintro/Сущность | |||
preload=Шаблон:Preload/Сущность | |||
default=Шаблон:Component/ | |||
buttonlabel=Создать страницу компонента | |||
</inputbox> | |||
</div> | |||
<div style='display: inline-block;'> | |||
<inputbox> | |||
type=create | |||
editintro=Шаблон:Editintro/Сущность | |||
preload=Шаблон:Preload/Сущность | |||
default=Шаблон:Prototype/ | |||
buttonlabel=Создать страницу прототипа | |||
</inputbox> | |||
</div> | |||
== Какие параметры получает шаблон == | == Какие параметры получает шаблон == | ||
Кроме режимов и <code>id</code>, модуль передаёт шаблону параметры из JSON-страницы сущности. | Кроме режимов и <code>id</code>, модуль передаёт шаблону параметры из JSON-страницы сущности. | ||
Например, json сущности <code>MopItem</code> из [[Участник:IanComradeBot/component/ | Например, json сущности <code>MopItem</code> из [[Участник:IanComradeBot/component/MeleeWeapon.json]] выглядит так: | ||
<pre> | <pre> | ||
"MopItem": { | "MopItem": { | ||
| Строка 62: | Строка 80: | ||
} | } | ||
}, | }, | ||
... | |||
}, | }, | ||
</pre> | </pre> | ||
| Строка 91: | Строка 91: | ||
То есть модуль передаёт расплющенные параметры записи, и после этого их можно использовать как обычные параметры шаблона, в том числе с точками в имени. | То есть модуль передаёт расплющенные параметры записи, и после этого их можно использовать как обычные параметры шаблона, в том числе с точками в имени. | ||
Дальше их можно оставить так, либо использовать json функции из {{шс|Модуль:GetField}}, если нужно обработать вложенность (пример [[Шаблон:Component/ | Дальше их можно оставить так, либо использовать json функции из {{шс|Модуль:GetField}}, если нужно обработать вложенность (пример [[Шаблон:Component/MeleeWeapon]]). | ||
== Использование модуля == | == Использование модуля == | ||
| Строка 116: | Строка 116: | ||
Примеры: | Примеры: | ||
* {{tji|сущность|id| | * {{tji|сущность|id|showSource{{=}}1}} | ||
* {{tji|сущность|id| | * {{tji|сущность|id|componentBlacklist{{=}}Item, Sprite}} | ||
* {{tji|сущность|id|prototypeBlacklist{{=}}Alert, Tag}} | |||
* {{tji|сущность|id|componentWhitelist{{=}}Explosive, Sprite}} | |||
* {{tji|сущность|id|prototypeWhitelist{{=}}Alert, Tag}} | |||
== Параметры == | == Параметры == | ||
{{Параметры| | {{Параметры| | ||
{{Параметры/строка|1|Id сущности.|Да}} | {{Параметры/строка|1|Id сущности.|Да}} | ||
{{Параметры/строка|showSource|Показывать источники полей. При значении <code>1</code> источники отображаются.|Нет}} | |||
{{Параметры/строка|whitelist|Белый список полей в формате <code>режим_поле</code>, перечисленных через запятую.|Нет}} | {{Параметры/строка|whitelist|Белый список полей в формате <code>режим_поле</code>, перечисленных через запятую.|Нет}} | ||
{{Параметры/строка|blacklist|Чёрный список полей в формате <code>режим_поле</code>, перечисленных через запятую.|Нет}} | {{Параметры/строка|blacklist|Чёрный список полей в формате <code>режим_поле</code>, перечисленных через запятую.|Нет}} | ||
{{Параметры/строка| | {{Параметры/строка|componentWhitelist|Белый список компонентов, которые нужно учитывать при сборке сущности.|Нет}} | ||
{{Параметры/строка| | {{Параметры/строка|componentBlacklist|Чёрный список компонентов, которые не нужно учитывать при сборке сущности.|Нет}} | ||
{{Параметры/строка|prototypeWhitelist|Белый список прототипов, которые нужно учитывать при сборке сущности.|Нет}} | |||
{{Параметры/строка|prototypeBlacklist|Чёрный список прототипов, которые не нужно учитывать при сборке сущности.|Нет}} | |||
}} | }} | ||
== См. также == | == См. также == | ||
* {{шс|loc}} | * {{шс|loc}} | ||
* {{шс|GetField}} | * {{шс|Модуль:GetField}} | ||
* {{шс|Предмет}} | * {{шс|Предмет}} | ||
* {{шс|Модуль:Сущность/поля}} | * {{шс|Модуль:Сущность/поля}} | ||
| Строка 136: | Строка 142: | ||
== Примечания == | == Примечания == | ||
* Если нужный шаблон сущности или компонента отсутствует, модуль выводит служебный блок с указанием отсутствующего шаблона. | * Если нужный шаблон сущности или компонента отсутствует, модуль выводит служебный блок с указанием отсутствующего шаблона. | ||
* Для карточки модуль отдельно вызывает подпись поля и его содержимое, поэтому обычно нужно задавать обе части: <code>cardLabel</code> и <code>cardContent</code>. | * Для карточки модуль отдельно вызывает подпись поля и его содержимое, поэтому обычно нужно задавать обе части: <code>cardLabel</code> и <code>cardContent</code>. | ||