我遇到了一个情况,我的内容项既被删除又被发布。在大约 10,000 个内容项中,这种情况只发生了两次。所以,我相信它很少见。
通过删除和发布,我的意思是对于给定的内容项,没有最新 = true 的 Orchard_Framework_ContentItemVersionRecord 记录。然而,对于同一个内容项,至少有一个版本记录具有 Published = true 值。
这导致最终用户能够搜索、查找和访问内容项。最终用户可以执行此操作,即使内容项已被删除(从 Orchard 管理仪表板)。
我试图想出一个故事来解释这是如何发生的。我已经安装了版本管理器模块(这样我就可以轻松地取消删除内容项并监控数据库中版本记录的状态)。然后我尝试了以下方法:
- 删除已发布的项目。这会产生一组版本记录(对于内容项),其中没有一个是最新的或已发布的。
- 删除未发布的项目。这会产生相同的结果(Latest = 0 和 Published = 0 的版本记录集合)。
- 我已经确认没有设置与内容项状态有关的工作流。
有没有人遇到过这种情况,或者(甚至更好)弄清楚它是如何发生的并且知道如何防止它再次发生?
(我正在运行 Orchard 版本 1.9.2.0)