问题描述
我想使用 SavetoDatabaseFinisher 将表单数据存储在数据库中。数据应该分配给页面,表单插件所在的页面,我不知道如何找到当前页面的pid
。在我发现的每个例子中,pid 总是硬编码在 yaml 文件中。
我尝试了 {pid}
和 {__pid}
,但没有成功。那么如何获取当前页面的 id (pid) 以将其存储在数据库中(在 TYPO3 8.7 中)?还是只能在以后的 T3 版本中实现?
...
databasecolumnmappings:
pid:
value: '{__pid}'
tstamp:
value: '{__currentTimestamp}'
elements:
...
解决方法
由于运行时引用目前除了表单值之外不可扩展,因此您需要添加一个自定义完成器来确定当前页面 ID 和 stores it as finisher variable。然后您可以在 SaveToDatabase
修整器配置中访问此变量。