W - - 在富文本编辑器中更改图像标签/格式

问题描述:

我正在使用没有其模板的w((我使用rest-framework构建了一个API)。 我想改变图像的格式的富文本编辑器W - - 在富文本编辑器中更改图像标签/格式

例如,这是我的富文本字段现在:

<p>test test test</p> 
<p><br/></p><p><embed alt=\"IMG_1232.jpg\" embedtype=\"image\" format=\"test\" id=\"4\"/><br/></p>" 

相反,我想它仅包括直接链接图像,甚至更好的图像与我定义的过滤器(与register_image_format)。 例如:

<p>test test test</p> 
<p><br/></p><p><embed href="/media/IMG_1232.width-400"/><br/></p>" 

这可能吗? 我看着hallo.js但不知道该怎么做吧......

感谢

要获取图像,嵌入和文档的完整URL,你必须通过运行富文本块的内容richtext filter模板标记。

from wagtail.wagtailcore.templatetags import wagtailcore_tags 

rich_text = wagtailcore_tags.richtext(rich_text_source) 

rich_text应该嵌入和完整的URL的图像。

与DRF使用它会是这个样子,如果你做你的串行

from django.contrib.auth.models import User 
from django.utils.timezone import now 
from rest_framework import serializers 
from wagtail.wagtailcore.templatetags import wagtailcore_tags 

class SomeSerializer(serializers.Serializer): 
    rich_text = serializers.SerializerMethodField() 

    def get_rich_text(self, obj): 
     return wagtailcore_tags.richtext(obj.rich_text.source) 
+0

我不使用模板(我与DRF工作)。我现在正在使用流域。你知道这有可能吗?感谢 – Rani

+0

这就是我刚刚提到的方式,只需将html源代码传递给'wagtailcore_tags.richtext'函数即可。它会为您扩展URL –

+0

图像不在RichText中,但在ImageChooserBlock中。我不知道这是可能的,我必须为每个图像打两次数据库 - 一个从ID获取图像对象,另一个获取image_rendition。谢谢 – Rani