2012-04-10 119 views
1

而修改django-userenasettings.py我遇到這個錯誤Django管理錯誤

Environment: 


Request Method: GET 
Request URL: http://127.0.0.1:8000/admin/ 

Django Version: 1.3.1 
Python Version: 2.7.2 
Installed Applications: 
['django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'django.contrib.messages', 
'django.contrib.admin', 
'easy_thumbnails', 
'guardian', 
'south', 
'userena', 
'userena.contrib.umessages', 
'demo_project.profiles'] 
Installed Middleware: 
('django.middleware.common.CommonMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django.middleware.locale.LocaleMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'django.contrib.messages.middleware.MessageMiddleware', 
'userena.middleware.UserenaLocaleMiddleware') 


Traceback: 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response 
    111.       response = callback(request, *callback_args, **callback_kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/admin/sites.py" in wrapper 
    214.     return self.admin_view(view, cacheable)(*args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/utils/decorators.py" in _wrapped_view 
    93.      response = view_func(request, *args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/views/decorators/cache.py" in _wrapped_view_func 
    79.   response = view_func(request, *args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/admin/sites.py" in inner 
    196.     return self.login(request) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/views/decorators/cache.py" in _wrapped_view_func 
    79.   response = view_func(request, *args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/admin/sites.py" in login 
    331.   return login(request, **defaults) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/utils/decorators.py" in _wrapped_view 
    93.      response = view_func(request, *args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/views/decorators/cache.py" in _wrapped_view_func 
    79.   response = view_func(request, *args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/auth/views.py" in login 
    59.  current_site = get_current_site(request) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/sites/models.py" in get_current_site 
    92.   current_site = Site.objects.get_current() 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/contrib/sites/models.py" in get_current 
    25.    current_site = self.get(pk=sid) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/manager.py" in get 
    132.   return self.get_query_set().get(*args, **kwargs) 
File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/query.py" in get 
    349.      % self.model._meta.object_name) 

Exception Type: DoesNotExist at /admin/ 
Exception Value: Site matching query does not exist. 

你知道是什麼原因造成這個錯誤?

編輯

哈克Harmston說明Site.objects.get(pk=settings.SITE_ID)返回此錯誤

Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/manager.py", line 132, in get 
    return self.get_query_set().get(*args, **kwargs) 
    File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/query.py", line 349, in get 
    % self.model._meta.object_name) 
DoesNotExist: Site matching query does not exist. 
>>> Site.objects.get(pk=settings.SITE_ID) 
Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/manager.py", line 132, in get 
    return self.get_query_set().get(*args, **kwargs) 
    File "/home/elie/.django-projects/userena-demo/local/lib/python2.7/site-packages/django/db/models/query.py", line 349, in get 
    % self.model._meta.object_name) 
DoesNotExist: Site matching query does not exist. 

在我的數據庫中有一個site_id http://127.0.0.1:8000/' which is the domain name that i used instead of example.com`

+1

你在你的數據庫有從settings.py文件的ID的網站對象? – StefanNch 2012-04-10 11:05:38

+0

你忘了運行執行syncdb? – 2012-04-10 11:06:17

+0

@burhan django-userena有兩個settings.py,一個在'demo project'文件夾內,另一個在它外面,我在'demo project'文件夾中運行syncdb,但是我正在編輯其他settings.py文件,沒有manage.py文件,因此我無法運行syncdb – user 2012-04-10 17:02:32

回答

-1

我知道這聽起來不可思議,但我曾經看到過這樣的錯誤。嘗試刪除django.contrib.sites。它與該人安裝的另一個應用程序相撞。

+0

建議有人批發刪除依賴項是不明智的。他們可能不需要站點的contrib包,但他們可能還是其第三方應用程序可能需要它的一個。此外,如果有一個網站包衝突,這與包裝,而不是網站的問題。你不應該寫任何與Django的東西衝突的東西,不管它是否可選。 – 2012-04-10 14:23:56

3

SITE_ID設置的值可能不會與Site對象的主鍵相對應。您可以通過運行這個驗證:

$ ./manage.py shell 
Python 2.7.1 [...] 
>>> from django.contrib.sites.models import Site 
>>> from django.conf import settings 
>>> Site.objects.get(pk=settings.SITE_ID) 
<Site: example.com> 

如果最後命令的響應不是Site對象(這將會有可能提出一個Site.DoesNotExist除外),那麼這就是問題所在。您可以通過不設置SITE_ID,如果你不使用django.contrib.sites這是不必要的解決這個問題。

+0

請閱讀我的編輯 – user 2012-04-11 09:23:56

+0

或者,你可以在DB編輯SITE_ID – 2017-07-12 07:04:40