保存站点配置时,config.yaml中的RouteEnhancers部分将被删除

时间:2019-08-26 18:54:47

标签: routing typo3 typo3-9.x

不幸的是,在后端编辑了站点配置后,部分routeEnhancer的数据丢失了。我注意到后端根本不反映该部分中的数据,但是我当然不希望它被默默地杀死。

这是“打算”还是未完成,或者我做错了什么?

这是我的配置文件的内容。

rootPageId: 1
base: 'https://REDACTED2019.dievorschau.de/'
baseVariants: {  }
languages:
  -
    title: Deutsch
    enabled: true
    languageId: '0'
    base: /de/
    typo3Language: de
    locale: de_DE.UTF-8
    iso-639-1: de
    navigationTitle: German
    hreflang: de-DE
    direction: ''
    flag: de
  -
    title: Englisch
    enabled: true
    languageId: '1'
    base: /en/
    typo3Language: default
    locale: en_GB.UTF-8
    iso-639-1: en
    navigationTitle: Englisch
    hreflang: en-GB
    direction: ltr
    fallbackType: strict
    flag: gb
errorHandling: {  }
routes: {  }
routeEnhancers:
  REDACTEDveranstaltungen_veranstaltungen:
    type: Extbase
    extension: REDACTEDVeranstaltungen
    plugin: Veranstaltungen
    routes: 
      - { routePath: '/themenbereiche/{thema_titel}', _controller: 'Termin::search',  _arguments: {'thema_titel': 'veranstaltungsarten/0'} }
      - { routePath: '/veranstaltung/{termin_titel}', _controller: 'Veranstaltung::show',  _arguments: {'termin_titel': 'termin'} }
    aspects:
      termin_titel:
        #type: TerminValueMapper
        type: PersistedAliasMapper
        tableName: 'tx_REDACTEDveranstaltungen_domain_model_termin'
        routeFieldName: 'uid'
      thema_titel:
        type: PersistedAliasMapper
        tableName: 'sys_category'
        routeFieldName: 'title'

1 个答案:

答案 0 :(得分:4)

是的,确实,即使您编辑并从任何给定的页面树的后端保存它,您的SiteConfiguration也会被覆盖。

在我的最新项目之一中,我将导入功能用于yaml SiteConfiguration。 我的默认Yaml看起来像

imports:
- { resource: "EXT:my_custom_sitepackage/Configuration/Routes/Default.yaml" }

在这种情况下,您可以将配置保存在自定义站点程序包中并进行版本控制。 如前所述,如果任何后端编辑器都可以通过TYPO3后端对其进行更改,则可以通过恢复默认的yaml文件来重新创建以前的配置。

但是它不能解决问题,在这种情况下,整个编辑过程可能会中断,在这种情况下,编辑/管理员可以通过后端编辑并保存SiteConfiguration,直到手动还原默认的Yaml文件为止。

我希望可以按如下说明永久加载任何预定义的配置:https://forge.typo3.org/issues/86803