Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typo3 类型3为CommandController命令定义storagePid_Typo3_Scheduler_Typoscript_Extbase_Typo3 6.2.x - Fatal编程技术网

Typo3 类型3为CommandController命令定义storagePid

Typo3 类型3为CommandController命令定义storagePid,typo3,scheduler,typoscript,extbase,typo3-6.2.x,Typo3,Scheduler,Typoscript,Extbase,Typo3 6.2.x,我想使用CommandController(调度器)导入不同的数据。 我发现可以设置全局存储PID,如: module.tx_myextension.persistence.storagePid = 123 资料来源: 这很好,但我的扩展包含多个模型,应该保存在不同的Pid上 我还发现了一篇老帖子,有人说可以为每个模型定义一个pid,这正是我需要的: module.tx_myextension.persistence.classes.tx_myextension_domain_model_pl

我想使用CommandController(调度器)导入不同的数据。 我发现可以设置全局存储PID,如:

module.tx_myextension.persistence.storagePid = 123
资料来源:

这很好,但我的扩展包含多个模型,应该保存在不同的Pid上

我还发现了一篇老帖子,有人说可以为每个模型定义一个pid,这正是我需要的:

module.tx_myextension.persistence.classes.tx_myextension_domain_model_player.storagePid = 124
module.tx_myextension.persistence.classes.tx_myextension_domain_model_customer.storagePid = 125
资料来源:

但这句话似乎被忽略了。这是正确的方法还是我做错了什么


我使用的是Type3 6.2.44

我建议为控制器操作创建参数。对于每个型号,都有一个存储pid

所以你有了
myCommand($domain1Pid,$domain2Pid,$domain3Pid,…)

现在,作为函数中的第一个调用,您将获得存储库的查询设置并应用存储PID:

$querySettings = $this->domain1Repository->createQuery()->getQuerySettings();
$querySettings->setStoragePageIds([$domain1Pid]);
$this->domain1Repository->setDefaultQuerySettings($querySettings);
对每个存储库重复此操作。在调度程序作业设置或cli中,您现在可以为每个存储定义PID


顺便说一句:您也可以使用
$domain->setPid(123)
来设置每个模型的pid保存位置。

尝试将UID定义为逗号分隔的列表,这样行吗?这至少对检索有用,但对存储不太确定。你只想检索那些模型,还是同时存储新模型?我需要同时检索和存储它们。