2012-07-04 52 views
2

我想允许使用Django显示嵌入式YouTube视频(以及其他常见的嵌入式媒体)。 Django中是否有这种情况发生?在Django/Python中允许嵌入视频的方法是什么?

上下文是,我试图显示rss项目,它可能会或可能不会有一个或多个嵌入的视频在给定的项目。使用“安全”过滤器丢弃它们,并编写一个返回mark_safe(html)的自定义过滤器,其中“html”是传递的项目,也会丢弃它们。无论如何要克服这一点?

您是否必须从视图内的rss项目中拉出嵌入的对象,然后将它们重新嵌入到模板中?

虽然我是Django的新手,但我对此主题进行了大量搜索,尚未找到有用的答案。任何帮助将非常感激。

+1

这看起来并不是django特有的。似乎纯粹与客户端html + javascript解决方案有关。如果你的问题是关于如何解析rss,那么你需要提供例子。 – jdi

+0

这不是客户端。我将拉动rss feeds,并将视图中的项目(特别是“description”或“content”部分)传递给模板,并且该模板将删除所有嵌入。我认为dbf在下面写的是正确的,但我希望有一种更简单的方式将它从视图传递到模板,而不必将内容分离为嵌入和非嵌入。 – Dave

回答

1

我想通了这个问题的答案...我正在使用feedparser,这是删除某些内容。我最终加入了猴子补丁(我相信这是正确的术语),让更多的材料,使它通过:

feedparser._HTMLSanitizer.acceptable_elements.add("object") 
feedparser._HTMLSanitizer.acceptable_elements.add("embed") 
feedparser._HTMLSanitizer.acceptable_elements.add("iframe") 
相关问题