如何在django-cms中使用iframe

sve*_*ann 4 python django django-templates django-cms djangocms-text-ckeditor

我正在寻找一个很好的解决方案,使最终用户可以在模板占位符中插入iframe(Soundcloud).我想过使用djangocms-txt-ckeditor插件.在它的文档中,它说要使用可配置的消毒剂来完成这个:

djangocms-text-ckeditor使用html5lib来清理HTML以避免安全问题>并检查正确的HTML代码.消毒可以剥夺标签用于某些用例,例如iframe; 您可以自定义>覆盖TEXT_ADDITIONAL_TAGS和TEXT_ADDITIONAL_ATTRIBUTES设置所允许的标记和属性:

TEXT_ADDITIONAL_TAGS =('iframe',)
TEXT_ADDITIONAL_ATTRIBUTES =('scrolling','allowfullscreen','frameborder')

我确实编辑了我的项目中的settings.py并重新启动了我的webserver(nginx).但是消毒剂仍在包装它以避免html插入.

我想避免为此目的编写SoundCloud插件.

欢迎任何建议.

sve*_*ann 7

正如@yakky在评论中所建议的那样,我确实更新了Django环境,以便在2.8.1版本中使用"djangocms_text_ckeditor".

在我的settings.py中使用此设置时,效果很好:

TEXT_ADDITIONAL_TAGS = ('iframe',)
TEXT_ADDITIONAL_ATTRIBUTES = ('scrolling', 'allowfullscreen', 'frameborder', 'src', 'height', 'width')
Run Code Online (Sandbox Code Playgroud)

(soundcloud)iframe显示,没有发生进一步的问题.

请注意:更新环境可能会导致故障.始终在开发环境中首先尝试.