Moin
1
在帖子超过20条的主题中,只有前20条帖子会显示翻译;其余帖子保持未翻译状态。
- 选择英语作为您的界面语言(德语也可以,所以我猜除了中文之外,其他语言都可以)。
- 打开任何主题,并确保翻译已关闭。
- 打开 Discourse-embed-bilibili(在discourse中插入哔哩哔哩视频)
- 向下滚动到最后一篇帖子。
- 滚动回第一篇帖子。
- 将语言切换为英语。
- 向下滚动。
**预期:**所有帖子都是英语。
**实际结果:**前20条帖子是英语,但滚动加载的帖子是原始语言。
这在其他超过20条帖子的主题中也存在。我选择这篇帖子作为示例,是因为最后一篇帖子不是英语,所以可以用英语界面重现。如果您选择不同的界面语言,您也可以在英语帖子主题中重现它。
1 个赞
Falco
(Falco)
2
花了我一些时间才弄明白,但这个 bug 的要点是:
“显示原文”按钮仅适用于当前“页面”的帖子,在通过滚动加载下一页时不会被遵守
对吗?
这会深入到路由 GET https://meta.discourse.org/t/#{topic.id}/posts.json?post_ids[]=#{posts.id},它不遵守 cookie content-localization-show-original: "true"。
Moin
3
也许 
我的问题是我正在阅读原始语言的主题。然后我使用了切换按钮,因为我不会说中文。这把我带回了第一个帖子(我不完全明白为什么;它并不总是发生。这就是为什么我在上面的步骤中选择了滚动)。
然后前 20 篇帖子是英文的,但最后的帖子仍然是中文的。
我认为在这种情况下,show_original=false 将是我需要看到所有帖子都为英文的。
Moin
5
我检查了网络选项卡,我认为问题在于,在我使用切换按钮查看翻译后,这些帖子没有新的请求:
nat
(Natalie T)
6
是的,没错。
/posts.json?post_ids 确实支持“显示原始”,但问题是由于前端存储仅加载现有帖子。这是一个解决了恼人的跳回第一个帖子的问题的修复程序。
4 个赞
nat
(Natalie T)
7
这刚刚被合并了。更改可能在一小时内影响到 meta,因此我将进行监控,如果一切看起来都正常,我将关闭它。
编辑:看起来不错 - 关闭。
1 个赞