我正在尝试在我的数据库中安全对象,因此我正在使用PersistenceManager类。
在调用persistAll()
之前,我正在向我的存储库添加一个对象。
$newChecklist = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('foo\\bar\\Domain\\Model\\Checklist');
$newChecklist->setNameDE('de');
$newChecklist->setNameEN('en');
$newChecklist->setAuthor('someGuy');
//DebuggerUtility::var_dump($newChecklist); //returns object with correct attribute values
$this->checklistRepository->add($newChecklist);
之后我就像这样使用PersistenceManager:
$persistenceManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Persistence\\Generic\\PersistenceManager');
$persistenceManager->persistAll();
但是这段代码只生成一个空的数据库记录。
我的语法中找不到任何错误。我的文件名都正确设置,Model => Checklist,Repository => ChecklistRepository,Controller => ChecklistController
有谁知道如何解决这个问题?
提前致谢
此代码适用于我的BE模块:
class MyController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
{
/**
* myRepository
*
* @var \VENDOR\Extension\Domain\Repository\AddressRepository
* @inject
*/
protected $addressRepository = null;
function import() {
$persistenceManager = $this->objectManager->get("TYPO3\\CMS\\Extbase\\Persistence\\Generic\\PersistenceManager");
...
$record = GeneralUtility::makeInstance('VENDOR\\Extension\\Domain\\Model\\Address');
$record->setTitle('The Title');
$record->setPid(123);
...
$this->myRepository->add($record);
$persistenceManager->persistAll();
...
}
}