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)
我不使用模板(我与DRF工作)。我现在正在使用流域。你知道这有可能吗?感谢 – Rani
这就是我刚刚提到的方式,只需将html源代码传递给'wagtailcore_tags.richtext'函数即可。它会为您扩展URL –
图像不在RichText中,但在ImageChooserBlock中。我不知道这是可能的,我必须为每个图像打两次数据库 - 一个从ID获取图像对象,另一个获取image_rendition。谢谢 – Rani