如何返回 wagtail 应用程序的 model.py 文件中的当前页面 URL

Lal*_*s M 3 django wagtail

我有一个 wagtail 应用程序,我需要在其中返回当前页面的 url。我的应用程序的 model.py 的代码如下

import urllib

from django.conf import settings
from django.db import models

from wagtail.core.models import Page
from django.http import HttpResponse

class PageUrl(Page):
    def returnPageUrl(self):
        page_url = """ i need the page url here """
        return page_url
Run Code Online (Sandbox Code Playgroud)

Wil*_*sem 7

模型Page有一个字段url_path。因此,您可以通过以下方式访问页面 URL:

class PageUrl(Page):

    def returnPageUrl(self):
        return self.url_path
Run Code Online (Sandbox Code Playgroud)

或者你可以使用full_url获取完整的url(包括主机名等):

class PageUrl(Page):

    def returnPageUrl(self):
        return self.full_url
Run Code Online (Sandbox Code Playgroud)

话虽如此,由于它已经是一个字段,我认为为此定义额外的方法没有太大用处。