天天看點

django安裝xadmin中出現的報錯彙總

報錯一:ModuleNotFoundError: No module named 'django.core.urlresolvers'

1 ModuleNotFoundError: No module named 'django.core.urlresolvers'      

解決方法:按照提示找到出錯的檔案, 将所有 import django.core.urlresolvers 改成 import django.urls

import django.core.urlresolvers 

#改成
import django.urls      

報錯二:TypeError: __init__() missing 1 required positional argument: 'on_delete'

TypeError: __init__() missing 1 required positional argument: 'on_delete'      

解決方法:這個基本是models檔案中models.ForeignKey()中出錯的,按照django文檔,在括号裡加上on_delete=models.CASCADE

報錯三:TypeError: __init__() takes 1 positional argument but 6 were given

TypeError: __init__() takes 1 positional argument but 6 were given      

解決方法:提示說在xadmin\views\dashboard.py這個檔案的,找到

                 forms.Field.__init__(self, required, widget, label, initial, help_text,  *args, **kwargs)

                 改成

                 forms.Field.__init__(self)

forms.Field.__init__(self, required, widget, label, initial, help_text,  *args, **kwargs)

#改成
forms.Field.__init__(self)      

報錯四:ImportError: cannot import name 'login' from 'django.contrib.auth.views'

ImportError: cannot import name 'login' from 'django.contrib.auth.views'      

解決方法:提示是在xadmin\views\website.py", line 5, in <module>

                       from django.contrib.auth.views import login

                 找到位置,将

                   from django.contrib.auth.views import login

                   from django.contrib.auth.views import logout

                改為

                  from django.contrib.auth import authenticate, login, logout

from django.contrib.auth.views import login
from django.contrib.auth.views import logout

#改為
from django.contrib.auth import authenticate, login, logout      

 

報錯五: ImportError: cannot import name 'QUERY_TERMS' from 'django.db.models.sql.query'

ImportError: cannot import name 'QUERY_TERMS' from 'django.db.models.sql.query'      

解決方法:提示 xadmin\plugins\filters.py", line 10, in <module>

                找到位置,将

     from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS

     改為

       from django.db.models.sql.query import LOOKUP_SEP, Query

from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS

#改為
from django.db.models.sql.query import LOOKUP_SEP, Query      

     

報錯六:ImportError: cannot import name 'password_reset_confirm' from 'django.contrib.auth.views'

ImportError: cannot import name 'password_reset_confirm' from 'django.contrib.auth.views'      

解決方法:提示\xadmin\plugins\passwords.py", line 4, in <module>

                  找到    from django.contrib.auth.views import password_reset_confirm

     改為    from django.contrib.auth.views import PasswordResetConfirmView

       找到77行,将   return password_reset_confirm

                                    改為   return PasswordResetConfirmView

from django.contrib.auth.views import password_reset_confirm
#改為   
from django.contrib.auth.views import PasswordResetConfirmView

#找到77行  
return password_reset_confirm
#改為   
return PasswordResetConfirmView      

    

報錯七:AttributeError: 'Settings' object has no attribute 'MIDDLEWARE_CLASSES'

AttributeError: 'Settings' object has no attribute 'MIDDLEWARE_CLASSES'      

解決方法:提示    xadmin\plugins\language.py", line 24, in <module>

                           if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE_CLASSES:

                   改為 if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE:

if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE_CLASSES:
#改為 
if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE:      

 還有别的錯誤多為 ModuleNotFoundError: No module named,根據提示安裝相應子產品就行,安裝了還不行可能是子產品名寫錯。