日期范围似乎不正确

您好,我使用的是 Discourse 2025.11.0,我认为日历分页存在问题:

我创建了两个活动:

  • 2025-08-27T14:00:00.000+02:002025-08-27T15:00:00.000+02:00
  • 2025-11-29T12:00:00.000+01:002025-11-29T13:00:00.000+01:00

当我在日历中显示当前月份(/upcoming-events/month/2025/11/1)时,我可以看到 API 调用使用了正确的 before/after 日期:
/discourse-post-event/events?after=2025-10-27T00%3A00%3A00%2B01%3A00\u0026before=2025-12-08T00%3A00%3A00%2B01%3A00\u0026attending_user=

但是返回了两个活动,即使第一个活动超出了范围。

当我更改月份以显示 2025 年 8 月时,没有返回任何活动。

2 个赞

我本地试了一下,无法重现 :thinking:

您能详细说明一下您的步骤吗?

1 个赞

您好 @zogstrip

我在清除所有开发环境(数据和 tmp)后重新进行了操作,也无法重现该问题。这很奇怪。可能是我之前存在无效数据导致的。

很抱歉造成了这个问题。

但是,关于步骤,我“只是”通过“新主题”表单创建了两个具有不同日期的事件。

没关系。

那我关闭这个问题。

如果你弄清楚了重现步骤,随时可以找我 :+1:

好的,我明白了这些步骤!

  1. 为今天创建一个事件(我不认为日期相关)
  2. 编辑帖子并将日期更改为上个月(在帖子编辑器中,而不是在事件表单中,也不是在事件本身的“编辑此事件”按钮中)
  3. 重复此操作(事件现在应该在十月)
  4. 移至十月:API 响应中没有事件
  5. 移回十二月:事件在那里(但由于日期不匹配而未显示)

编辑: 我通过事件详情中的“编辑事件”按钮将日期更改为九月,现在在十一月的 API 调用中返回了该事件

恐怕我仍然无法重现。每当我编辑帖子以更改 Markdown 中的月份时,该事件都会在“即将发生的事件”日历中正确显示。

我不知道这是否有帮助,但我录制了步骤

我无法将视频附加到帖子中;该链接的有效期至 2026/02/01。

1 个赞

我明天会看看是否能在 RSpec 测试中重现这个问题

感谢您的视频,我终于能够在本地重现问题了 :raising_hands:

这个问题相当隐蔽,但这是修复方案。

3 个赞

干得好!

谢谢您的查看!

1 个赞