TYPO3 v10如何在前端获取对象的日期或tstamp

问题描述 投票:0回答:1

我正在使用TYPO3 v10,并且已经构建了扩展。

在FrontEnd的某些地方,我需要获取crdate或tstamp。 TYPO3没有用于获取它们的getter和setter方法。

在TYPO3 v10之前,您可以执行以下操作:

config.tx_extbase {
    persistence {
        classes {
            TYPO3\CMS\Extbase\Domain\Model\FileMount {
               mapping {
                  tableName = sys_filemounts
                  columns {
                     title.mapOnProperty = title
                     path.mapOnProperty = path
                     base.mapOnProperty = isAbsolutePath
                  }
               }
            }
        }
    }
}

最诚挚的问候,

php typo3 frontend custom-fields typo3-10.x
1个回答
0
投票

解决方案非常简单。我必须建立自己的吸气剂并绘制它们。示例crdate

Model1.php

/**
* @var int
*/
protected $creationDate;


/**
 * Returns the creationDate
 *
 * @return int $creationDate
 */
public function getCreationDate()
{
    return $this->creationDate;
}

tx_extension_domain_model_model1.php

'crdate' => [
   'exclude' => true,
   'config' => [
       'type' => 'select',
       'renderType' => 'inputDateTime',
       'eval' => 'datetime,int',
       'default' => 0,
       'range' => [
           'upper' => mktime(0, 0, 0, 1, 1, 2038)
       ],
       'behaviour' => [
           'allowLanguageSynchronization' => true
       ]
   ],
],

您的扩展名/配置/Extbase/Persistence/Classes.php

return [
    \Vendor\ExtensionName\Domain\Model\Model1::class => [
        'tableName' => 'tx_extension_domain_model_model1',
        'properties' => [
            'creationDate' => [
                'fieldName' => 'crdate'
            ]
            ...
        ]
    ]
];

现在crdate可以在前端检索

最诚挚的问候

© www.soinside.com 2019 - 2024. All rights reserved.