Ethsim2
(Ethan )
883
我一直在研究 Pavilion Events Plugin 中的 this.router 错误,并找到了这个分支:
从我看到的情况来看,这个分支只是 angusmcleod/discourse-events 的一个副本,没有任何更新以适应最新的 Discourse 更改(包括 Ember 5 支持)的提交。它似乎没有解决导致当前错误的已弃用代码路径。
根据社区帖子和测试,我了解到以下几点:
- 原始的 Events Plugin 目前不兼容 Discourse 的 Ember 5 升级。
- 用户报告了
event-rsvp 和 add-event 模态框的问题,导致功能中断。
- 一个临时的解决方法是在
app.yml 中添加 EMBER_VERSION=3 来强制 Discourse 使用 Ember 3——但这并不是一个长期的解决方案,并且可能会导致未来的问题。
- 这种情况一直持续到 2025 年初,而插件维护者没有发布官方更新。
问题:
- 有没有人能确认我上面的理解是准确的?
- 有没有人成功在最新的 Discourse 上运行
awesome-it/discourse-events 分支而无需回退到 Ember 3?
- 是否有任何积极维护的分支或替代插件可以复制 Events Plugin 的功能?
任何确认或更正都将不胜感激,以便我能计划是:
- 坚持使用 Pavilion 插件并使用 Ember 3 回退
- 切换到核心中的官方日历/活动功能
- 迁移到另一个积极维护的分支
Ethsim2
(Ethan )
884
我们认为此插件已损坏,应标记为 ~broken~ deprecated 。
3 个赞
你好 @angus
Events 插件是否与最新版本的 Discourse 兼容?
我再也找不到 https://pavilion.tech/ 上用于测试插件兼容性的页面了。
上次评论后,我不敢更新到最新版本。
就我个人而言,我仍在使用 3.5.0.beta4-dev 版本,与 Location 关联的 Events 功能非常有用 
Ethsim2
(Ethan )
887
@staff 我可以请求对该主题的 OP 进行一次小型审核更新吗?
此处的插件(“Discourse Events”)并非 Pavilion 维护,并且目前包含已弃用的 Ember 代码(this.router)。这已在此支持线程中得到确认,其中建议如果安装了该插件则禁用它。
目前 OP 没有明确说明这一点,这可能会与官方的Discourse Calendar / Event插件混淆。您是否考虑在顶部添加一个简短的注释(例如,“
此插件已弃用且包含已弃用的代码。请勿与官方 discourse-calendar 插件混淆”)?
这样,未来的读者就不会将两者混淆了。
1 个赞
angus
(Angus McLeod)
888
该插件现在可以在最新版本的 Discourse 上运行。
6 个赞
Ethsim2
(Ethan )
889
感谢 angus - 我很高兴你一直保持这个功能。我知道你已经不再专业支持 discourse-events 了,所以你仍然花时间在这里推送修复补丁,这对我来说意义重大。
我已经测试了 commit,它解决了我的网站上的路由错误。
我还看到了 Lhc_fl 之前指出的关于 event-label helper 使用已弃用代码的问题 - 这仍然是未来需要清理的事情。而且正如 davidtaylor 指出的那样,那些警告(与已弃用 API 相关)本身不应该破坏网站,所以你的路由修复是让事情再次正常运行的关键,这是有道理的。
感谢你让这个插件在当前的 Discourse 中保持活力。
2 个赞