【问题标题】:TYPO3 Inline element sorting does not work correctlyTYPO3 内联元素排序无法正常工作
【发布时间】:2018-11-29 12:29:41
【问题描述】:

在这篇帖子TYPO3 Inline element appearance configuration partially does not work 之后,我能够实现我想要的。现在的问题是,当我向上或向下拖动孩子时,排序将不起作用。

图片:

现在,当我将孩子移动到不同的位置(使用箭头或汉堡菜单标志)时,新订单将保存在后端,但在前端,订单不会改变。我认为它与数据库有关,但此时我不知道该怎么做。

编辑: 在我的数据库中,我对列进行了排序,并且每个项目都不同。如何使用此列对元素进行排序?

代码示例:

<f:for each="{myContent}" as="content">
      <f:format.html>{content.data.content_text}</f:format.html>
</f:for>

有什么想法吗?

提前致谢,

【问题讨论】:

    标签: typo3 typo3-8.7.x typo3-tca


    【解决方案1】:

    当您获取内联元素时,您需要考虑排序列。这主要发生在可能在您的域控制器中完成的数据库请求中。也许你需要重新定义一些方法。

    如果您使用 TYPO3 的内置功能,您需要相应地配置您的关系。
    查看manual,我发现您声明排序字段的值foreign_sortby。也许你只是使用默认字段sorting

    【讨论】:

    • 我没有域控制器。我的数据库上只有一个排序列并在 tca 上定义
    • 答案增强。
    • 这意味着我必须添加一个名为 foreign_sortby 的列,以便保存新的排序值,对吧?
    • 没有。您需要在 TCA 中声明一个选项 foreign_sortby (我假设它来自引用的 SO 问题),其值为 sorting (这是在 TYPO3 中排序的默认列名),当然您需要引用中的该列桌子。查看链接的手册。
    【解决方案2】:

    我终于找到了问题所在。因为我没有域模型,所以我使用 dataProccessing 来获取我的对象。所以,我所要做的就是添加一行orderBy = sorting。所以代码看起来像这样:

    myElement < lib.contentElement
    myElement {
        templateRootPaths.10 = {$Private}Templates/ContentElements/
        partialRootPaths.10 = {$Private}Partials/ContentElements/
        templateName = myElement.html
        dataProcessing {
            330 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
            330 {
                table = myElement_table
                pidInList = this
                where.field = uid 
                where.dataWrap = tt_content = |
                orderBy = sorting
                as = myElement
                dataProcessing {
                    370 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
                    370 {
                        references.fieldName = image
                        as = images
                    }
                }
            }
        }
    }
    

    问题解决了。

    非常感谢@Bernd Wilke πφ 试图帮助我解决我所有的 TYPO3 问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-14
      • 1970-01-01
      • 1970-01-01
      • 2012-03-29
      • 2018-07-18
      • 1970-01-01
      • 2018-07-30
      • 1970-01-01
      相关资源
      最近更新 更多