[strapi]将 v4.11.1 更新到 v4.11.4 会中断上传

2024-05-13 892 views
1
错误报告 所需的系统信息
  • Node.js 版本:v16.20.1
  • NPM版本:8.19.4
  • Strapi版本:v4.11.4
  • 数据库:SQLite
  • 操作系统:MacOS
  • 你的项目是Javascript还是Typescript:JS
描述错误

我们将所有上传的内容都放在根文件夹中。数据库看起来像这样。该项目之前从v3更新到了v4。

绘图

当我们使用 v.4.11.1 时,一切正常。我们今天升级到 v4.11.4,媒体库是空的。内容中的所有链接图像仍然可见。

我将问题调试到node_modules/@strapi/plugin-upload/server/controllers/admin-file.js第 29 行左右。在查看查询过滤器时,它们在版本之间发生了变化。

v.4.11.1:

绘图

v4.11.4:

绘图

我认为从查询过滤器中您可以看到问题。这是有意的改变吗?关于这一重大变化有什么说明吗?

回答

3

我认为从查询过滤器你可以看到问题

不,我不能发现它们真的很难读吗?

我可以澄清一下您在管理面板中查看媒体时遇到的错误吗?如果是的话在哪里?这是一个 UI 错误吗?我认为你的描述可能更详细一点——这真的很有帮助:)

7

嗨@joshuaellis

抱歉:D 是的,我说的是管理 UI。更新后“媒体库”是空的。我只是从那里跟踪 api 调用,这导致我node_modules/@strapi/plugin-upload/server/controllers/admin-file.js

6

酷,看看你的屏幕截图,你的媒体资产都没有folderPath,如果它们都在项目的根部,应该只有'/'我相信的字符串...... CC @Marc-Roig?

7

@joshuaellis,我们可能没有任何迁移来将空folderPath列迁移到/,所以升级的人可能会遇到这个问题。我相信我们将不得不更新过滤器路径来查找/null值,或者将其恢复为之前的状态。

3

谢谢@Marc-Roig,我想避免恢复,因为它会导致 BE 中的性能问题。

@vandres 有两个问题:

  • 您现在使用媒体文件夹吗?
  • 如果有,您的资产中是否有folderPath
8

@约书亚埃利斯

我们所有的文件都位于根文件夹中,因此我们不使用文件夹本身。他们都没有folderPath.

我现在通过执行以下 SQL 为我们解决了问题UPDATE files SET folder_path = "/"。但其他人可能会遇到这个问题,这是补丁版本之间的重大变化......

5

我同意在发布时应发布通知

0

@vandres & @Boegie19 – 不,这不是一个重大更改,我们更改了管理面板中的查询 – 问题在于我们引入文件夹时的迁移步骤,没有人包含将值更改为的脚本null'/'不幸的是,我只能道歉对于完成该功能的开发人员。

接下来我将修改查询以查找folderPath === null??

5

@joshuaellis 您仍然需要在版本中添加注释,因为这会破坏您将在下一个版本中修复它,但此版本有一个重大更改。

6

@joshuaellis 您仍然需要在版本中添加注释,因为这会破坏您将在下一个版本中修复它,但此版本有一个重大更改。

我们会就“重大变更”这一术语达成一致意见。

9

好吧,我们可以说,你们在这个版本中破坏了一些东西,所以最好将它添加到发行说明中,说明这个问题已经被破坏,并将在下一个版本中修复。

1

@joshuaellis 您仍然需要在版本中添加注释,因为这会破坏您将在下一个版本中修复它,但此版本有一个重大更改。

我们会就“重大变更”这一术语达成一致意见。

Josh 我同意 @Boegie19 的观点,即这是一个重大更改,因为根据我们的内部重大更改定义,升级次要版本后,先前存在的默认功能不再起作用。

https://www.notion.so/strapi/Breaking-changes-definition-1ab2fdb9663848828b1dd1b68e9bb771

3

相关内部 TID:4356 企业客户无法在其媒体库中查看超过 900 种资产

9

嘿@Marc-Roig,我仍然遇到问题,我们在库中只看到 2 个图像(而不是 3 页),我已经尝试了迁移脚本,但没有任何改变。媒体库在v4.11.3中工作正常

3

@alumedot 你好,您的迁移脚本是否有错误或打印的内容?

您是否可以使用任何工具来可视化 files数据库中的表?