Typo3 类型3 extbase-获取;uid";非持久化对象的定义
刚从第一个extbase扩展开始。在localconf中,我添加了以下操作:“列表、新建、显示、创建、编辑” 默认情况下,“create”重定向到“list”而不带任何参数,并且在创建扩展后立即运行良好Typo3 类型3 extbase-获取;uid";非持久化对象的定义,typo3,extbase,Typo3,Extbase,刚从第一个extbase扩展开始。在localconf中,我添加了以下操作:“列表、新建、显示、创建、编辑” 默认情况下,“create”重定向到“list”而不带任何参数,并且在创建扩展后立即运行良好 $this->redirect('list'); // <- this works if used $this->redirect('list');//priceCalcFormRepository->add($newPriceCalcForm); $this->flashMess
$this->redirect('list'); // <- this works if used
$this->redirect('list');//priceCalcFormRepository->add($newPriceCalcForm);
$this->flashMessageContainer->add('您的新PriceCalcForm已创建');
//解决方法-还是正确的方法?
$persistenceManager=\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('Tx_Extbase_Persistence_Manager');
$persistenceManager->persistAll();//getUid();//重定向('show',Null,Null,array('priceCalcForm'=>$uid));
}
若要,您可以保持当前状态,然后获取uid。插入配置管理器(TYPO3 6.x方式): 然后使用
$this->persistenceManager->persistAll();
以应用所有更改。然后可以将对象(或仅uid)传递给操作。是否尝试添加对象本身而不是对象的uid<代码>$this->重定向('show',NULL,NULL,array('priceCalcForm'=>$newPriceCalcForm))代码>这应该行得通。但是您仍然需要持久化该对象first@Merec写一个答案而不是评论,这样OP可以确认它。谢谢。所以坚持是必要的。谢谢你的澄清
/**
* persistence manager
*
* @var \TYPO3\CMS\Extbase\Persistence\PersistenceManagerInterface
* @inject
*/
protected $persistenceManager;
$this->persistenceManager->persistAll();