如何在Wagtail CMS中将外部对象添加为字段面板

时间:2016-11-14 16:27:20

标签: python django wagtail

我已经预先存在Django项目,我开始使用Wagtail驱动的应用程序。 在Django项目中,我有一个模型Map,我需要在wagtail-app中提供它。

Django-project Map类在 model.py

class Map(..):

Wagtail-app model.py:

class Wagtail-appPage(Page):
    main_image = models.ForeignKey(
       'wagtailimages.Image',
       null=True,
       blank=True,
       on_delete=models.SET_NULL,
       related_name='+'
    )
    map = models.ForeignKey(Map, related_name="map_set", null=True, blank=True)
    date = models.DateField("Post date")
    intro = models.CharField(max_length=250)
    body = RichTextField(blank=True)

    content_panels = Page.content_panels + [
        FieldPanel('date'),
        FieldPanel('intro'),
        FieldPanel('body', classname="full"),
        ImageChooserPanel('main_image'),
        <MapChooserPanel>('map')
    ]

我的目标是添加在wagtail / admin中加载wlatail面板中的地图对象的可能性(例如MapChooserPanel()),就像标准图像一样。

你会怎么做?这听起来很难吗?我对Wagtail来说是全新的......

提前感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

最简单的方法是将地图模型注册为snippet,然后使用SnippetChooserPanel从您的网页引用它。

祝你好运!