尝试回复主题时,若存在已有的编辑草稿,编辑器会以草稿内容作为回复打开

如果你开始编辑一个帖子,然后点击 x 保存编辑草稿,再点击 Reply(回复)按钮,编辑器会打开并显示你的编辑草稿,而不是一个空白的编辑器。此时编辑器的操作甚至不是“编辑”,而是“回复”,它会以编辑后的帖子内容发布一条回复。

我认为出现这种情况的原因是,主题(topic)是通过一个字符串类型的 draft 字段进行序列化的,因此系统并未内置对每个主题支持多个草稿的处理机制。

复现步骤:

  1. 开始编辑一个现有帖子。做一些修改以保存草稿。不要提交编辑。
  2. 使用 x 按钮关闭编辑器。
  3. 点击主题中的 Reply(回复)按钮。你会看到你的编辑草稿,而不是一个空白的编辑器。编辑器的操作是回复,甚至不是编辑。
4 个赞

为了更清晰,已在原帖中补充了复现步骤。

2 个赞

刚刚在 FIX: check if saved draft is an edited post (#43680) · discourse/discourse@bc06b6d · GitHub 中合并了一个修复,它应该能正确地将操作设置为 “edit”。

我们目前还不支持多个草稿编辑/回复(只支持多个主题草稿),所以这有点棘手——我们可能会在未来添加此功能。

3 个赞