Получение родительского / вложенного Flux CE внутри жидкости

У меня была та же проблема, что я обнаружил, так это то, что инструменты Android Developer не очень хорошо работают с JDK 8. Я удалил свой текущий JDK 8 и установил JDK 7 и работал так же, как без увеличения памяти кучи или удаления .gradle.

0
задан Jo Hasenau 18 February 2019 в 23:04
поделиться

3 ответа

Независимо от технологии, используемой для хранения отношения между родителем и потомком, вы всегда можете выбрать параметр FLUIDTEMPLATE dataProcessing.

Либо создайте переменную children или parent с помощью DatabaseQueryProcessor, например,

tt_content.mycontent.20 = FLUIDTEMPLATE
tt_content.mycontent.20 {
   file = EXT:site_default/Resources/Private/Templates/ContentObjects/MyContent.html

   dataProcessing.10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
   dataProcessing.10 {
      # regular if syntax
      if.isTrue.field = records

      # the table name from which the data is fetched from
      # + stdWrap
      table = tt_address

      # All properties from .select can be used directly
      # + stdWrap
      colPos = 1
      pidInList = 13,14

      # The target variable to be handed to the ContentObject again, can
      # be used in Fluid e.g. to iterate over the objects. defaults to
      # "records" when not defined
      # + stdWrap
      as = myrecords

      # The fetched records can also be processed by DataProcessors.
      # All configured processors are applied to every row of the result.
      dataProcessing {
         10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
         10 {
            references.fieldName = image
         }
      }
   }
}

. Вы можете использовать все параметры select для этого DataProcessor, и каждый из них можно изменить с помощью stdWrap. свойства. https://docs.typo3.org/typo3cms/TyposcriptReference/Functions/Select.html

Просто замените as = myrecords на нужное имя переменной, а затем получите доступ к этой переменной напрямую из вашего шаблона жидкости. Вы можете использовать <f:debug>{_all}</f:debug>, чтобы получить обзор доступных переменных.

Взятые из этих документов https://docs.typo3.org/typo3cms/TyposcriptReference/ContentObjects/Fluidtemplate/Index.html#dataprocessing

Кроме того, вы можете захотеть взглянуть на этом видео https://www.twitch.tv/videos/380759921 , чтобы получить представление о том, что такое dataProcessing.

0
ответ дан Jo Hasenau 18 February 2019 в 23:04
поделиться

Поскольку подход FLUIDTEMPLATE является универсальным, в то время как вопрос может быть ближе связан с Flux, здесь есть специальный способ передачи информации для дочерних записей:

https: // liquidtypo3 .org / viewhelpers / flux / master / Content / RenderViewHelper.html

<flux:content.render 
    area="NULL"
    limit="123"
    offset="123"
    order="'sorting'"
    sortDirection="'ASC'"
    as="NULL"
    loadRegister="{foo: 'bar'}"
    render="1"
>
    <!-- tag content - may be ignored! -->
</flux:content.render>

Просто введите дополнительную информацию в loadRegister с именем foo, чтобы сделать его доступным через метод getText [ 115] внутри дочернего процесса рендеринга.

loadRegister="{parentRecordType: '2'}"

и в пределах вашего дочернего рендеринга используйте

10 = TEXT
10.dataWrap = My parent record is of type {register:parentRecordType}

То же самое касается условий или переключений объектов на основе зарегистрированной информации. И, конечно же, для рендеринга дочерних записей на основе Fluid.

Просто используйте <f:debug>_all</f:debug>, чтобы получить обзор доступных регистров и данных.

https://docs.typo3.org/typo3cms/TyposcriptReference/DataTypes/Index.html#register

0
ответ дан Jo Hasenau 18 February 2019 в 23:04
поделиться

Да, все возможно с TYPO3 и во многих отношениях. Как вложены элементы содержимого? От родителей к детям (темплавоила) или от детей к родителю (жених)?

0
ответ дан Alex Kellner 18 February 2019 в 23:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: