我正在开发一个 Wagtail 项目,并尝试使用
EmbedBlock
将嵌入视频(来自 Vimeo)添加到我的主页。但是,我无法通过 Wagtail 管理嵌入任何视频链接。我尝试过在 EmbedBlock
、RichTextField
和 URLField
中嵌入视频,但都不起作用。
我没有收到任何具体的错误消息,只是:
有人经历过这个问题或者知道如何解决吗?
如有任何帮助,我们将不胜感激!
这是我的
models.py
:
from wagtail import blocks
from wagtail.models import Page
from wagtail.fields import RichTextField, StreamField
from wagtail.admin.panels import FieldPanel
from wagtail.images.blocks import ImageChooserBlock
from wagtail.embeds.blocks import EmbedBlock
class ImageAndEmbedBlock(blocks.StreamBlock):
image = ImageChooserBlock(required=False)
video = EmbedBlock(required=False)
class Meta: # noqa
label = "Media"
class HomePage(Page):
body = RichTextField(blank=True)
carousel = StreamField(ImageAndEmbedBlock(), null=True, blank=True)
content_panels = Page.content_panels + [FieldPanel("body"), FieldPanel("carousel")]
我尝试将其添加到设置中,但没有什么区别:
# commented out the import because it did not work neither
# from wagtail.embeds.oembed_providers import vimeo
vimeo = {
"endpoint": "https://www.vimeo.com/api/oembed.{format}",
"urls": [
r"^https?://(?:www\.)?vimeo\.com/.+$",
r"^https?://player\.vimeo\.com/.+$",
],
}
WAGTAILEMBEDS_FINDERS = [
{
"class": "wagtail.embeds.finders.oembed",
"providers": [vimeo],
}
]
您使用的 Wagtail 版本是什么?您尝试过各种 vimeo 网址吗?
我已经使用 6.2 对此进行了测试,使用 https://vimeo.com/channels/bestofstaffpicks/991662980?autoplay=1
嵌入已找到并正确呈现。我根本没有定制取景器。
您尝试过各种 Vimeo 网址吗?我不了解 Vimeo,但在 YouTube 上,上传者可以选择不允许通过嵌入共享他们的视频。如果您点击其中之一,则错误与您看到的相同。