2010-04-20 13 views
17

Zainstalowałem wszystkie aplikacje w projekcie, dodałem witrynę w sekcji witryny i usunięto domenę example.com. Teraz sekcja Strony w Django CMS 2.0 nie działa: podnosi wyjątek DoesNotExist: Site matching query does not exist. pod http://127.0.0.1:8000/admin/cms/page/Nieprawidłowe działanie Django CMS: zapytanie o dopasowanie do witryny nie istnieje

Sekcja działała normalnie, zanim usunąłem witrynę example.com.

W pliku settings.py mam linię SITE_ID = 2. Nadal w tym wywołaniu:

return Site.objects.get(pk=site_pk) 

w programie traceback, site_pk = 1.

Jak mogę to naprawić?

+4

Wystąpił ten problem po otrzymaniu błędu podczas 'syncdb'. Nigdy nie przyszło mi do głowy, że jeśli syncdb zostanie przerwany, domyślna strona nigdy nie zostanie utworzona. Aby to naprawić, właśnie dodałem obiekt lokacji ręcznie za pomocą 'django-admin.py shell' –

Odpowiedz

16

Od http://docs.djangoproject.com/en/dev/ref/contrib/sites/#ref-contrib-sites

ustawienie site_id określa identyfikator obiektu bazy danych serwisu związanego z tym plikiem poszczególnych ustawień.

Sprawdź tabelę django_site i upewnij się, że używasz poprawnego identyfikatora SITE_ID dla swojej witryny.

+0

To prawda, korzystam z Site 2, a SITE_ID ma 2, tak jak być powinno. –

+0

Dzięki za odpowiedź, działa, nie ma już wyjątku, ale jest inny problem. –

+0

tak długo, jak idziesz do przodu :-) –

Powiązane problemy