TYPO3 - 实体

时间:2018-01-03 11:15:16

标签: typo3 typo3-6.2.x

在Typo3 6.2上,我有一个扩展名:

  • 实体“事件”
  • 几个属性:“name”,“location”,“date”,“description”
  • 插件(“event_plugin”)和flexform

我的目标是允许后端用户通过在任何页面上添加插件来创建事件,然后通过flexform(或类似)配置属性。

我注意到flexform中的数据存储在tt_content表的数据库中,位于“pi_flexform”列中...但我想要的是使用我的实体系统而不创建任何后端模块!

我想这是可能的,因为一些现有的扩展是以这种方式开发的(powermail ...)

编辑:关于我的问题的更多代码/细节:

我的实体“事件”:

<?php

    namespace MyCompany\MyCompanyevents\Domain\Model;

    class Event extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity
    {

    /**
     * name
     *
     * @var string
     */
    protected $name = ''

    /**
     * eventdate
     *
     * @var integer
     */
    protected $eventdate = 0;

    /**
     * eventlocation
     *
     * @var string
     */
    protected $eventlocation = '';


    /**
     * eventdescription
     *
     * @var string
     */
    protected $eventdescription = '';


    // ALL the setters and the getters


    }

?>

我的控制器:

<?php

    namespace MyCompany\MyCompanyevents\Controller;

    class EventController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
    {

    /**
     * eventRepository
     *
     * @var \MyCompany\MyCompanyevents\Domain\Repository\EventRepository
     * @inject
     */
    protected $eventRepository = NULL;

    /**
     * action list
     *
     * @return void
     */
    public function listAction() {
        $events = $this->eventRepository->findAll();
        $this->view->assign('events', $events);
    }

    // Other Actions generated by the Extension builder : add, edit, update, delete, show

    }

?>

我的插件有效,我知道如何链接flexform文件。

通过一些TCA配置,后端用户可能已经在任何他们想要的地方逐个创建事件。我正在寻找的是将flexform文件链接到我的插件,这将允许用户创建一个事件并将所有细节(名称,位置等)直接填充到插件中。

这样,该插件应如下所示:

enter image description here

..并保存插件会在数据库中保存一个新的Event实例。

0 个答案:

没有答案