您好,
我在 Cloudron 上使用 Discourse 2.8.8 和 Discourse Calendar(commit https://github.com/discourse/discourse-calendar/commit/1b9ef8192a6b8a6a9ac7b98c7c72c16f97bcf00d)。当我尝试将插件更新到最新 commit(https://github.com/discourse/discourse-calendar/commit/d3bcef60d384fd92c6eb398a46b6240d89a17061)时,应用程序启动时出现此错误:
==> Migrating database
...
ArgumentError: Unknown migration version "7.0"; expected one of "4.2", "5.0", "5.1", "5.2", "6.0", "6.1"
...
/app/code/plugins/discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb:3:in `<main>'
文件代码:discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb at main · discourse/discourse-calendar · GitHub
我在论坛上还发现了这个帖子:
但我不知道为什么它不起作用(也不明白如何修复……)
有什么解决办法吗?
RGJ
(Richard - Communiteq)
2
根据 .discourse-compatibility 文件,当您处于 2.8 stable 版本时,不应更新/无法更新到该提交。
您是否有 plugin:pull_compatible_all?(应该有)
2 个赞
感谢 @RGJ。我不知道这种文件。将来我会检查它。
你是否有 plugin:pull_compatible_all?(你应该有)
我不知道那是什么。我使用 Cloudron 实例来部署 Discourse。要更新插件,我必须按照文档说明将其删除并重新安装:
但我刚刚看到我有一个 site_settings.yml 文件可以添加额外的自定义设置。我应该在这里用 plugin:pull_compatible_all 设置一些东西吗?
RGJ
(Richard - Communiteq)
4
您可能想将 Cloudron 的人引向这个话题,因为他们似乎没有取得什么进展,只是告诉您这是您这边的笔误,或者“您是否在正确的目录中?” 
他们需要更新他们的文档。
1 个赞
我从未问过 Cloudron 社区,我将在 Cloudron 论坛上开一个讨论帖。
他们为什么要更新文档?
Stephen
(Stephen)
6
问题在于您使用的是不受支持的安装方式。我们只能真正支持标准的安装方式。第三方软件包由于 Discourse 本身的变化而经常出现问题——这就是为什么不推荐它们的原因。
您试图安装的日历插件版本与 Cloudron 包中的 Discourse 版本不兼容。Cloudron 对 Discourse 进行了重新打包,因此没有使用受支持的插件安装方式。除非您想切换到可支持的安装方式,否则他们需要指导您解决此问题并更新他们的文档。
1 个赞
RGJ
(Richard - Communiteq)
7
2 个赞
好的。我将加入 Cloudron 论坛的讨论。
感谢您的回复,我更好地理解了 Discourse,以便为 Cloudron 社区提供帮助并分析未来的问题。
1 个赞