我正在练习一个非常简单的 Extbase 扩展,并使用 FlexForm 来获得三个公式字段。
其中之一称为“代码”,它应该进入 EmbedderController.php,然后进入查看器 List.html。
我检查了我能找到的所有教程。
我不明白如何将 FlexForm 值“代码”放入我的控制器中。
我得到一个空页面或没有任何价值。
这是我的 FlexForm:Embedder.xml
<T3DataStructure>
<meta type="array">
<langChildren>0</langChildren>
<langDisable>1</langDisable>
</meta>
<ROOT>
<type>array</type>
<el>
<settings.code>
<TCEforms>
<label>Video Code</label>
<config>
<type>input</type>
<size>20</size>
<max>30</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.code>
<settings.width>
<TCEforms>
<exclude>1</exclude>
<label>Breite in Pixel</label>
<config>
<type>input</type>
<size>10</size>
<max>10</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.width>
<settings.height>
<TCEforms>
<exclude>1</exclude>
<label>Höhe in Pixel</label>
<config>
<type>input</type>
<size>10</size>
<max>10</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.height>
</el>
</ROOT>
</T3DataStructure>
这是我的 EmbedderController.php
<?php
namespace HhuMediathek\Hhumediathek\Controller;
/**
* EmbedderController
*/
class EmbedderController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController {
/**
* embedderRepository
*
* @var \HhuMediathek\Hhumediathek\Domain\Repository\EmbedderRepository
* @inject
*/
protected $embedderRepository = NULL;
/**
* action list
*
* @return void
*/
public function listAction() {
$this->settings['code'];
}
}
这是查看器 List.html
<f:layout name="Default" />
<f:section name="main">
<iframe width='570' height='321' style='width: 570px; height: 321px; border: 1px solid #ccc;' src='//xxx.de/embed/{code}' frameborder='0' allowfullscreen></iframe>
</f:section>