大家好,
最近我写了一个 Discourse 主题组件 (GitHub - Beholder-Vision/discourse-insert-model-3d: A Discourse theme component for adding 3D models to topics),它允许 Discourse 管理员在他们的论坛上上传和显示 3D 模型。
起初一切似乎都运行良好,直到我收到报告说一些上传的模型消失了,然后我在自己的论坛上检查时发现上传的资源(3D 模型和海报图片)也被清理了 Insert Model 3D - #2 by patrickemin
阅读文档 (Understanding Uploads, Images, and Attachments) 时,我曾以为上传的资源会没问题,因为它们被帖子引用了,但在进行了一些挖掘后,我发现了这段代码 discourse/app/models/post.rb at 03bb43f7468d3aa6e73bba0805193ae50c7ec2d5 · discourse/discourse · GitHub HTML 标签之一引用时,才被认为是由帖子引用的。因此,如果一个链接的上传文件被 <a> 元素的 href 属性引用,它将被识别,但如果它被 <model-viewer> 元素的 src 属性引用(这是我的新主题组件添加的内容),则不会被识别。
能否请熟悉这段代码的人确认我的理解是否正确?如果正确,我认为创建主题组件的人可以通过生成一个引用该资源的隐藏 <a> 链接来将资源标记为上传内容,但如果文档 (Understanding Uploads, Images, and Attachments) 能更新以突出这个陷阱,那将非常有帮助。
非常感谢
Alan