Typo3 为 CommandController 命令定义 storagePid
Typo3 Define storagePid for CommandController command
我想使用 CommandController(调度程序)导入不同的数据。
我已经发现可以设置一个全局 storagePid,例如:
module.tx_myextension.persistence.storagePid = 123
来源:https://worksonmymachine.org/blog/commandcontroller-and-storagepid
效果很好,但我的扩展包含多个模型,应该保存在不同的 Pid 上
我还发现了一个旧的 post,其中有人说可以为每个模型定义一个 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
来源:https://typo3-german.typo3.narkive.com/WxjjtxXa/scheduler-storage-pid
但这行似乎被忽略了。这是正确的方法还是我做错了什么?
我在 TYPO3 6.2.44
我建议为控制器操作创建参数。对于每个模型一个存储 pid。
所以你有myCommand($domain1Pid, $domain2Pid,$domain3Pid, ...)
现在,作为函数中的第一次调用,您将获得存储库的 querySettings 并应用存储 pids:
$querySettings = $this->domain1Repository->createQuery()->getQuerySettings();
$querySettings->setStoragePageIds([$domain1Pid]);
$this->domain1Repository->setDefaultQuerySettings($querySettings);
对每个存储库重复此操作。在调度程序作业设置或 cli 中,您现在可以为每个存储定义 pids。
顺便说一句:您还可以使用 $domain->setPid(123)
设置每个模型的 pid 保存位置。
我想使用 CommandController(调度程序)导入不同的数据。 我已经发现可以设置一个全局 storagePid,例如:
module.tx_myextension.persistence.storagePid = 123
来源:https://worksonmymachine.org/blog/commandcontroller-and-storagepid
效果很好,但我的扩展包含多个模型,应该保存在不同的 Pid 上
我还发现了一个旧的 post,其中有人说可以为每个模型定义一个 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
来源:https://typo3-german.typo3.narkive.com/WxjjtxXa/scheduler-storage-pid
但这行似乎被忽略了。这是正确的方法还是我做错了什么?
我在 TYPO3 6.2.44
我建议为控制器操作创建参数。对于每个模型一个存储 pid。
所以你有myCommand($domain1Pid, $domain2Pid,$domain3Pid, ...)
现在,作为函数中的第一次调用,您将获得存储库的 querySettings 并应用存储 pids:
$querySettings = $this->domain1Repository->createQuery()->getQuerySettings();
$querySettings->setStoragePageIds([$domain1Pid]);
$this->domain1Repository->setDefaultQuerySettings($querySettings);
对每个存储库重复此操作。在调度程序作业设置或 cli 中,您现在可以为每个存储定义 pids。
顺便说一句:您还可以使用 $domain->setPid(123)
设置每个模型的 pid 保存位置。