2015-02-10 7 views
0

Я попытаюсь создать свои собственные элементы контента с помощью DCE (Dynamic Content Elements). Проблема У меня проблема при попытке работать с изображениями. Я создал поле выбора для изображений, которое отлично работает. В шаблоне жидкости я следующий код для обработки изображения:Typo3 Изображения DCE

<f:image src="{field.image}" alt="" treatIdAsReference="1" /> 

Но если я пытаюсь вставить элемент контента, Typo3 бросает мне это Exeption:

Oops, an error occurred! 

No file usage (sys_file_reference) found for given UID. 

More information regarding this error might be available online. 

Я уже выяснил, что это почти наверняка ошибка в Typo3, но как я могу ее исправить?

ответ

0

Got it. С формой намека vijay rami я узнал, что вы должны сделать изображение в АКД, как это:

<f:for each="{dce:fal(field:'image', contentObject:contentObject)}" as="fileReference" iteration="iterator"> 
    <f:if condition="{iterator.isFirst}"> 
     <f:image src="{fileReference.uid}" alt="" treatIdAsReference="1" /> 
    </f:if> 
</f:for> 

Конечно, вы должны изменить в первой строке «поле:" изображение»на ваше имя.

1

Для использования шаблона этот код:

<f:for each="{dce:fal(field:'fal', contentObject:contentObject)}" as="fileReference" iteration="iterator"> 
    <f:if condition="{iterator.isFirst}"> 
     <f:image src="{fileReference.uid}" alt="" treatIdAsReference="1" /> 
    </f:if> 
</f:for> 

Примечание field:'fal' не имя переменной вы установили, что это часть конфигурации под именем переменной:

... 
<foreign_match_fields> 
    <fieldname>fal</fieldname> <!-- Name of variable! --> 
</foreign_match_fields> 
... 
+1

Я могу подтвердить, что это работает , Это немного запутанно, потому что вы можете подумать, что «поле:» - это имя поля. Возможно, это должно быть, но в этом случае это не работает. –