В TYPO3, с extbase и fluid, какво е определението за джаджа

Какво е "джаджа" в TYPO3?

Имам някои предизвикателства при създаването на разширение и виждам много препратки към „джаджи“, които правят това и това.

Не знам дали "джаджа" е синоним на "разширение". Не знам дали ще бъде специален вид разширение или едно разширение може да съдържа няколко джаджи.

Вероятно съм прекарал 20-30 часа от последната седмица в четене на документация и съм толкова близо до целите си. Моля, мили господа и госпожи, кажете какво точно е джаджа (в TYPO3)?


person nHaskins    schedule 17.11.2015    source източник


Отговори (1)


Можете да разгледате документацията на Flow дефиниция на Widgets . Основните изводи са:

  1. Widget - е специален ViewHelper, който се използва във Fluid шаблони. Така че вашето разширение може да съдържа толкова джаджи, колкото искате.
  2. Джаджата трябва да съдържа собствен контролер. Така че това се различава от обичайния ViewHelper, тъй като ViewHelpers обикновено нямат състояние и не участват в MVC процеса. Но Widgets могат да съдържат състояние и те са част от MVC, така че могат да се третират като специални добавки.
  3. Уиджетите са обвързани с контекста на повикващия. Това означава, че ако контролерът на вашия Widget търси $this->settings, тогава настройките ще бъдат прочетени от разширение, което използва Widget (това беше моят опит в TYPO3 6.2).

И така, както виждате - Widget е ViewHelper и Plugin едновременно. Добър пример за Widget е f:widget.paginate - може да бъде използван в шаблон Fluid на всяко разширение и в същото време той напълно взаимодейства с MVC стека.

person Viktor Livakivskyi    schedule 18.11.2015