Django 修改wagtail上每个模型页面的slug

Django 修改wagtail上每个模型页面的slug,django,wagtail,Django,Wagtail,我试图为Wagtail上特定页面模型的每个页面创建一个自定义slug。我一直在研究并尝试这些示例,但这似乎修改了url结构,而不是slug本身 以下是我希望做的事情: 当前页面标题:关于Django 当前页面slug:关于django 我想要的页面标题:关于Django 我想要的页面片段:关于django的很棒的东西 我研究了创建路由方法,但这似乎并没有修改slug。有没有办法在你的鼻涕虫身上预先涂点什么?我知道我可以手动执行此操作,但希望自动执行此操作。保存时自动更新页面的一种可能性是覆盖fu

我试图为Wagtail上特定页面模型的每个页面创建一个自定义slug。我一直在研究并尝试这些示例,但这似乎修改了url结构,而不是slug本身

以下是我希望做的事情:

当前页面标题:关于Django

当前页面slug:关于django

我想要的页面标题:关于Django

我想要的页面片段:关于django的很棒的东西


我研究了创建路由方法,但这似乎并没有修改slug。有没有办法在你的鼻涕虫身上预先涂点什么?我知道我可以手动执行此操作,但希望自动执行此操作。

保存时自动更新页面的一种可能性是覆盖
full\u clean
方法:

class MyPage(Page):

    # ...

    def full_clean(self, *args, **kwargs):
        # first call the built-in cleanups (including default slug generation)
        super(MyPage, self).full_clean(*args, **kwargs)

        # now make your additional modifications
        if not self.slug.startswith('awesome'):
            self.slug = "awesome-%s" % self.slug