发送聊天消息时出错[从 3.1.0beta4 降级到 Stable]

您好,几天前,我将 Discourse 版本从 3.1.0.beta4 降级到 3.0.3,因为存在主题安装问题。

现在,当我发送聊天消息时,我会收到此错误:

错误:关系“chat_uploads”不存在 LINE 1:SELECT “uploads”。 FROM “uploads” INNER JOIN “chat_uploads” …* ^

网站链接是:https://oii.francescomancuso.it/forum/

如何解决?谢谢。

快速问一下,论坛是 Discourse 的吗?

是的,它被配置为在 /forum/ 子文件夹中运行。

恐怕无法降级。

2 个赞

您好,感谢您的回复。
我没有降级,而是将版本从 beta 版更改为 stable 版。

不幸的是,这是一个降级。从 betatests-passed [1] 分支更改为 stable 是不可能的,因为您的数据库将存在不向后兼容的差异。


  1. 默认分支 ↩︎

3 个赞

好的,非常感谢您的回复。
我应该切换到测试版来解决这个问题吗?
还是等待稳定版?

感谢您的帮助 :grin:

大约每年发布一个新稳定版,所以如果你能再等上几个月,就可以等到下一个稳定版发布。:+1: 我不确定这是否会自动让一切恢复正常,因为考虑到你使用的是 3.1.0beta4 而不是 3.0.3 稳定版,这可能是一个不稳定的更新,但我认为这可能会没问题。:crossed_fingers:

或者你可以在你的 app.yml 中改回使用 tests-passed,并使用最新版本,这应该能解决所有问题。只是为了确认一下,这是一个标准安装吗?

3 个赞

您好,感谢您的回复。
是的,但我在论坛的指南中按照说明将 Discourse 设置为可以通过 /forum/ 子文件夹访问。

最初我安装的是 3.1.0.beta4 版本,但在安装“Air Theme”或任何其他主题时,网站没有加载 CSS 样式表,布局也因此损坏了。:sweat:

从 beta 升级到 stable 后,主题不再冲突,但我失去了一些功能 :pensive:

啊,是的,你之前也提到了。子文件夹设置是一个高级设置,不适合胆小的人。如果你想省事,应该考虑使用常规的子域名版本。

4 个赞

您好,感谢您的回复。
这是在购买新域名之前的临时解决方案。

另外,按照这些步骤操作似乎效果很好,包括服务器上使用 nginx 安装的其他网站 :grin:

您不能使用子域名吗?我认为这通常会让用户感到困惑,例如:

community.acme.com

您好,感谢您的回复。:smiley:
实际上,对于这个项目,我已经在使用了子域名:https://oii.francescomancuso.it/

它包含一个分为三个部分的 Python 应用程序:
/admin/
/contest/
/ranking/

在 /contest/ 部分登录的用户可以通过 SSO 连接到位于 /forum/ 的论坛。

网站可以通过子文件夹访问的事实是否会导致兼容性问题,例如与使用测试版的主题有关?

谢谢。

使用子文件夹时,不保证与任何内容的兼容性。这是一种高级安装,很少经过测试。

您可以为 Discourse 安装使用不同的子域。SSO 将在子域之间正常工作。

子文件夹指南的顶部包含以下文本:

您需要移回 tests-passed 才能达到基本可支持的状态,假设您的数据库现在没有损坏。回滚版本是不受支持的。

1 个赞

您好,感谢您的回复。
如何将网站转移到 forum.francescomancuso.it 子域?

是否有特殊程序,还是只需更改 app.yaml 文件和 nginx 配置的设置?

感谢您的帮助。

您需要撤销为子文件夹所做的更改,并在新子域名的 DNS 设置好后,更改安装中的域名
希望您在尝试降级之前已经有了备份——在尝试上述操作之前,请再次进行备份。
然后您需要重新建立 SSO。

1 个赞

您好,再次感谢您的回复。
我将尝试转移论坛。

1 个赞