sin*_*ini 1 typo3 scheduler extbase
在做新东西之前,我希望我的scheduler-Task从数据库中删除所有条目,execute-function看起来像这样:
public function execute() {
$objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Object\ObjectManager');
$jobRepository = $objectManager->get('\TYPO3\MyExtension\Domain\Repository\JobRepository');
//clear DB
$jobRepository->removeAll();
(...)//insert new entries to DB
$objectManager->get('TYPO3\CMS\Extbase\Persistence\PersistenceManagerInterface')->persistAll();
return true;
}
Run Code Online (Sandbox Code Playgroud)
将新条目插入数据库工作正常,但清除数据库根本不起作用.我究竟做错了什么?
由于removeAll()电话findAll():
public function removeAll() {
foreach ($this->findAll() AS $object) {
$this->remove($object);
}
}
Run Code Online (Sandbox Code Playgroud)
最有可能不findAll()返回任何对象.你有没有处理存储pid?禁用它或手动传递它.如果您从调度程序上下文中使用存储库的方法,那么它就不会存在.
| 归档时间: |
|
| 查看次数: |
1428 次 |
| 最近记录: |