配置文件的严格限制

页面摘要: Strapi 5 对 /config/ 文件夹中的配置文件名强制执行严格的命名要求:不允许大小写不敏感的重复文件名、不允许重复的基础文件名,并且屏蔽某些保留名称;自定义配置应使用符合这些规则的文件名。

Strapi 5 对允许加载的配置文件名有严格限制。 本页面是破坏性变更数据库的一部分,提供有关该破坏性变更的信息,以及从 Strapi v4 迁移到 Strapi 5 的附加说明。

破坏性变更说明

在 Strapi v4 中

Strapi 项目 /config/ 文件夹中的每个 .js、.ts 和 .json 文件都会被加载到 strapi.config 中。

例如,如果存在名为 /config/my-custom-config.js 的文件,它会被加载,并可通过 strapi.config.get('my-custom-config.someProperty') 访问。

在 Strapi 5 中

Strapi 5 对允许加载的文件名有严格限制(详情请参阅说明)。

迁移

本节汇总了关于该破坏性变更的有用说明和操作步骤。

说明

在 Strapi 5 中,配置文件名应符合以下要求:

  • 不应存在大小写不敏感的重复文件名。如果同时存在 CUSTOM.js 和 custom.js,只会加载其中一个。
  • 不应存在不带扩展名的重复基础文件名。如果同时存在 custom.json 和 custom.js,只会加载其中一个。
  • 以下文件名被限制且不会加载:
    • uuid
    • hosting
    • license
    • enforce
    • disable
    • enable
    • plugin
    • strapi
    • middleware
    • telemetry
    • launchedAt
    • serveAdminPanel
    • autoReload
    • environment
    • packageJsonStrapi
    • info
    • autoReload
  • 建议仅使用字母数字字符(a-zA-Z0-9)。
  • 所有内部 Strapi 配置(请参阅 配置 中的文件列表)必须符合这些配置文件的已知结构(即,不应向现有文件中添加自定义字段)。

手动迁移

将任何现在无效的配置文件重命名为新名称,并更新代码以在该路径中查找。

如果你向内部 Strapi 配置文件中添加了自定义字段,则应改为创建一个新文件来存储自定义配置,并确保新文件名符合 Strapi 5 的要求。