如何默认按时间顺序排列主题回复

我最近将论坛从 NodeBB 迁移到了 Discourse。到目前为止一切都很顺利,但我发现每个主题内的所有回复都自动按时间倒序排序(最新的回复在顶部,最旧的回复在底部),这似乎是错误的。

我花了大约 30 分钟试图找出如何默认按时间顺序显示所有主题回复(最旧的回复在顶部,最新的回复在底部),但我找不到在管理员设置中调整此项的位置。

我错过了什么?我在哪里可以调整这些回复的排序方式?

1 个赞

这很奇怪,根据这里的多个主题,这甚至是不可能的:

所有新主题和帖子都这样,还是只有导入的主题和帖子是这样?

2 个赞

好问题。

只有导入的主题(数量达数千个)的回复像这样按时间倒序排序。

迁移后创建的少数新主题按时间顺序排序,这才是正确的。

有没有办法追溯地将这些导入主题的回复按时间顺序排序?

2 个赞

我认为有一个可能很有用的 rake 任务:

rake posts:reorder_posts
4 个赞

它们按 topic_id 顺序显示。问题在于,我猜想,nodeBB 导入器以某种方式以反向 cron 的方式获取数据,因此按反向顺序创建帖子。
您需要确保导入脚本在进行导入时按时间顺序对帖子进行排序。(您还需要清除整个数据库并重新进行导入)。

说得好!看起来那个应该有效,不过如果还不算太晚的话,我建议修复导入脚本并重新开始。

2 个赞