存储库/控制器:如何强制TYPO3加载“排序”字段?

时间:2014-04-07 09:58:01

标签: typo3 extbase typo3-6.1.x

在控制器/模板中,我希望能够访问实体的字段sorting

我试图像访问它一样:

$category->getSorting();

但它失败了,因为该方法不存在。当我转储实体时,所有这些元字段,例如hiddenstarttime等都没有列出。

如何告诉TYPO3加载这些字段以及权利的其他字段?

1 个答案:

答案 0 :(得分:7)

由于您处于Extbase上下文中,因此必须将该属性添加到模型中(或者如果使用其他扩展的模型),请对其进行扩展并添加属性。在这两种情况下,如果要访问和编辑属性值,则需要getter和setter方法:

/**
 * @var integer
 */
protected $sorting;

public function setSorting($sorting) {
    $this->sorting = $sorting;
}

public function getSorting() {
    return $this->sorting;
}

确保您也在TCA中配置了该字段:

...
'columns' => array(
    'sorting' => array(
        'label' => 'sorting',
        'config' => array(
            'type' => 'passthrough'
        )
    ),
    ...

在此之后,您应该能够访问排序属性。