我最近将论坛从 NodeBB 迁移到了 Discourse。到目前为止一切都很顺利,但我发现每个主题内的所有回复都自动按时间倒序排序(最新的回复在顶部,最旧的回复在底部),这似乎是错误的。
我花了大约 30 分钟试图找出如何默认按时间顺序显示所有主题回复(最旧的回复在顶部,最新的回复在底部),但我找不到在管理员设置中调整此项的位置。
我错过了什么?我在哪里可以调整这些回复的排序方式?
我最近将论坛从 NodeBB 迁移到了 Discourse。到目前为止一切都很顺利,但我发现每个主题内的所有回复都自动按时间倒序排序(最新的回复在顶部,最旧的回复在底部),这似乎是错误的。
我花了大约 30 分钟试图找出如何默认按时间顺序显示所有主题回复(最旧的回复在顶部,最新的回复在底部),但我找不到在管理员设置中调整此项的位置。
我错过了什么?我在哪里可以调整这些回复的排序方式?
这很奇怪,根据这里的多个主题,这甚至是不可能的:
所有新主题和帖子都这样,还是只有导入的主题和帖子是这样?
好问题。
只有导入的主题(数量达数千个)的回复像这样按时间倒序排序。
迁移后创建的少数新主题按时间顺序排序,这才是正确的。
有没有办法追溯地将这些导入主题的回复按时间顺序排序?
我认为有一个可能很有用的 rake 任务:
rake posts:reorder_posts
它们按 topic_id 顺序显示。问题在于,我猜想,nodeBB 导入器以某种方式以反向 cron 的方式获取数据,因此按反向顺序创建帖子。
您需要确保导入脚本在进行导入时按时间顺序对帖子进行排序。(您还需要清除整个数据库并重新进行导入)。
说得好!看起来那个应该有效,不过如果还不算太晚的话,我建议修复导入脚本并重新开始。