gpt4 book ai didi

typo3 - 如何在Flux FlexForm Configuration中选择和存储ContentElement UID?

转载 作者:行者123 更新时间:2023-12-02 03:39:43 33 4
gpt4 key购买 nike

我目前正在使用 Flux 和 Fluidpages(均为 GitHub Master-Branch)构建 TYPO3 PageTemplate。我希望能够从 PageTree 中选择多个 ContentElements 并将 UID 存储在变量中以供以后呈现。

我的第一种方法是将 Flux TreeField 与 RelationField 相结合:

  <flux:form.sheet name="content" label="content settings">
<flux:field.tree
name="treetest"
label="treetest"
table="pages"
parentField="pid"
foreignLabel="title"
multiple="true"
minItems="0"
maxItems="1000"
size="8"
expandAll="false"
/>
<flux:field.relation
name="relationtest"
label="relationtest"
table="tt_content"
condition="AND tt_content.pid IN ({treetest})"
multiple="true"
size="8"
minItems="0"
maxItems="3"
/>
</flux:form.sheet>

不幸的是,这会导致 SQL 错误,因为最后一个条件被插入为:

  AND tt_content.pid IN (60|foo)

其中“foo”是 UID 为 60 的 SysFolder 的标题。

前端的调试输出将字段“treetest”打印为:

  treetest => '60' (2 chars)

字段“relationtest”的条件为:

  condition => 'AND tt_content.pid IN (60)' (26 chars)

问题:

  1. 事实上,我在这里遗漏了一些东西,如果有任何提示,我将不胜感激,关键在哪里?

  2. 从 PageTree 中选择 ContentElement 是否有不同的解决方案?

最佳答案

1) 您可能有默认值、继承值或包含其他值的某种断开连接的 XML。要 100% 确定这些都不是您的原因,请在全新的页面上尝试相同的操作。您的代码和选择页面 UID 的预期结果恰好是值 60 - 仅此而已。

2) 您可能会发现在foreign_table_where 中使用###STORAGE_PID### 标记并选择允许内容选择的页面会更容易,作为编辑内容元素或页面时 Behavior 选项卡中的值。此值的额外好处是可以只允许某些用户或用户组,或者只允许管理员。

关于typo3 - 如何在Flux FlexForm Configuration中选择和存储ContentElement UID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20824944/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com