0

(我使用带有 extbase-extension 的typo3 4.5。)

我将 pages_language_overlay 映射到我的 extbase-model

Tx_Extension_Domain_Model_ModelName {
    mapping {
        tableName = pages_language_overlay
    }
}

我用一些 setter 和 getter 创建了一个模型 Tx_Extension_Domain_Model_ModelName。添加存储库 Tx_Extension_Domain_Repository_ModelNameRepository 后

public function initializeObject() {
    $this->defaultQuerySettings = $this->objectManager->create('Tx_Extbase_Persistence_Typo3QuerySettings');
    $this->defaultQuerySettings->setRespectStoragePage(FALSE);
}

并像这样注入存储库

public function injectModelNameRepository(Tx_Extension_Domain_Repository_ModelNameRepository $modelNameRepository) {
    $this->modelNameRepository = $modelNameRepository;
}

我无法使用 findByPid 选择条目。我正在使用 findByUid 对其进行测试并回显 pid 并且它可以工作,但是我使用 findByPid 没有得到任何结果。

有人有想法吗?

4

1 回答 1

1

我只需要添加

public function initializeObject() {
    $this->defaultQuerySettings = $this->objectManager->create('Tx_Extbase_Persistence_Typo3QuerySettings');
    $this->defaultQuerySettings->setRespectStoragePage(FALSE);
    $this->defaultQuerySettings->setRespectSysLanguage(FALSE);
}

在此之后它运作良好。否则查询有一个检查,如

AND pages_language_overlay.sys_language_uid IN (0,-1)

在 where 子句中。

于 2013-01-15T09:28:56.050 回答