AttributeError:'WSGIRequest'对象没有属性'site'-ag,wagalytics

问题描述 投票:0回答:1

我正在尝试在新的wagtail网站(https://github.com/tomdyson/wagalytics)中实施wagalytics。

我是我的错误在views.py的第138行弹出

site = Site.objects.get(hostname=request.site.hostname)

AttributeError: 'WSGIRequest' object has no attribute 'site'

当我将其更改为类似内容时>

try:
    site = Site.objects.get(hostname=request.site.hostname)
except:
    site = '127.0.0.1'

它有效-或至少使我陷入下一个问题。

显然,我不想在生产中的代码中使用try / except块-并且最好了解一下这里发生的事情以及如何解决它。]

我正在尝试在新的wagtail网站(https://github.com/tomdyson/wagalytics)中实施wagalytics。我是我的错误在views.py site = Site.objects.get(hostname = request.site ....

django wagtail
1个回答
0
投票

出现此错误是因为request对象没有.site属性。您需要为此启用CurrentSiteMiddleware [Django-doc]

您可以通过在CurrentSiteMiddleware设置的元组/列表中添加'django.contrib.sites.middleware.CurrentSiteMiddleware'来实现。因此,MIDDLEWARE文件应如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.