Я пытаюсь получить отношение N: M с потоком.Итак, у меня есть объект с именем «Paket» с некоторыми атрибутами (название, цена,…).Затем я определил packageliste.html:
<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers">
<f:layout name="Content" />
<f:section name="Configuration">
<flux:form id="paketliste" >
<flux:field.select name="settings.spalten" items="{0:{0:'2 Spalten',1:2},1:{0:'3 Spalten',1:3},2:{0:'4 Spalten',1:4}}" default="3" />
<flux:field.multiRelation name="settings.pakete"
multiple="0"
size="10"
minItems="0"
maxItems="99"
table="tx_mbcomponents_domain_model_paket"
mm="tx_mbcomponents_domain_model_paketliste_paket_mm"
foreignField="paketliste"
transform="array<MbAECSoftware\\mbcomponents\\Domain\\Model\\Paket>"
>
<flux:wizard.suggest/>
</flux:field.multiRelation>
</flux:form>
</f:section>
<f:section name="Preview" />
<f:section name="Main">
<h1>Paketliste</h1>
<div>Anzahl Spalten: {settings.spalten}</div>
<div>Anzahl Pakete: <f:count>{settings.pakete}</f:count> = {settings.pakete}</div>
<div>Pakete: {settings.pakete}</div>
<div>
<f:for each="{settings.pakete}" as="obj" iteration="it">
<p>OBJ-{it.index} = {obj}, {obj.titel} <f:format.currency currencySign="€" decimalSeparator="," thousandsSeparator="." prependCurrency="false">{obj.preis}</f:format.currency> <f:count>{obj.module}</f:count></p>
</f:for>
</div>
</f:section>
</div>
В бэкэнде TYPO3 все вроде бы нормально, но при рендеринге во внешнем интерфейсе я получаю следующую ошибку:
Uncaught TYPO3 Exception
Argument 2 passed to TYPO3\CMS\Core\Database\Query\QueryBuilder::leftJoin() must be of the type string, null given, called in /mnt/web220/c1/11/5776011/htdocs/2018/typo3_src-8.7.19/typo3/sysext/extbase/Classes/Persistence/Generic/Storage/Typo3DbQueryParser.php on line 905
TypeError thrown in file
/mnt/web220/c1/11/5776011/htdocs/2018/typo3_src-8.7.19/typo3/sysext/core/Classes/Database/Query/QueryBuilder.php in line 570.
103 TYPO3\CMS\Core\Database\Query\QueryBuilder::leftJoin("tx_mbcomponents_domain_model_paket_modul_mm", NULL, NULL, "`tx_mbcomponents_domain_model_paket_modul_mm`.`uid_local` = ``.`uid`")
/mnt/web220/c1/11/5776011/htdocs/2018/typo3_src-8.7.19/typo3/sysext/extbase/Classes/Persistence/Generic/Storage/Typo3DbQueryParser.php:
00903: );
00904: }
00905: $this->queryBuilder->leftJoin($leftTableAlias, $rightTableName, $rightTableAlias, $joinConditionExpression);
00906: if ($rightSource instanceof Qom\JoinInterface) {
00907: $this->parseJoin($rightSource, $rightTableAlias);
Есть ли некоторыеидеи?Мы используем TYPO3 8.7 с FLUX 8.2.1.