繁体   English   中英

django-user-accounts'WSGIRequest'对象没有属性'user'

[英]django-user-accounts 'WSGIRequest' object has no attribute 'user'

因此,我遵循django-user-accounts的文档,正在获取错误消息'WSGIRequest'对象没有属性'user'

    MIDDLEWARE_CLASSES = [
...
"account.middleware.LocaleMiddleware",
"account.middleware.TimezoneMiddleware",
...
   ]

MIDDLEWARE_CLASSES已过时,因此我将两行代码仅放在MIDDLEWARE中。

INSTALLED_APPS = [
'account',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.sites',
'django.contrib.staticfiles',
 ]

MIDDLEWARE = [
"account.middleware.LocaleMiddleware",
"account.middleware.TimezoneMiddleware",
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
 ]

根urls.py

  from django.conf.urls import url, include
  from django.contrib import admin

  urlpatterns = [
   url(r'^admin/', admin.site.urls),
   url(r"^account/", include("account.urls")),
   ]

我进行了帐户的 makemigrations ,然后又进行了迁移 服务器运行正常,没有错误,但是每当我转到localhost:8000 / accounts / login时,我要么得到404要么没有属性'user'

在使用Django 2.0时,我的解决方案是确保Django的中间件早于django-user-accounts中间件,并且我认为所有应用程序都是如此。

只需更改订单顺序就可以了:

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    "account.middleware.LocaleMiddleware",
    "account.middleware.TimezoneMiddleware",
]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM