我必须遵循应该返回正确 url(相对或绝对)的代码片段
class LinkFields(models.Model):
link_external = models.URLField("External link", blank=True)
link_page = models.ForeignKey('wagtailcore.Page', null=True, blank=True, related_name='+')
link_document = models.ForeignKey('wagtaildocs.Document', null=True, blank=True, related_name='+' )
@property
def url(self):
if self.link_page:
return self.link_page.url
elif self.link_document:
return self.link_document.url
else:
return self.link_external
panels = [
FieldPanel('link_external'),
PageChooserPanel('link_page'),
DocumentChooserPanel('link_document'),
]
class Meta:
abstract = True
因此,如果我将“.url”属性用于“wagtailcore.Page”,则会得到一个以“http”而不是“https”开头的绝对 url。
在我的“视图/模型”中返回正确的相对 url 或正确的绝对 url(在我的情况下以 https 开头)的正确 wagtail 方法是什么?
谢谢