Почему "нет такой таблицы: django_session" при попытке использовать admin? - PullRequest
2 голосов
/ 21 октября 2011

Я почти уверен, что база данных была создана, и я правильно выполнил python manage.py syncdb, но все же я сталкиваюсь с этой ошибкой при попытке доступа к http://127.0.0.1:8000/admin/. Вот некоторые подробности.

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

Django Version: 1.3.1
Python Version: 2.7.1
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'blog',
 'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware')

Exception Type: DatabaseError at /admin/
Exception Value: no such table: django_session

Ответы [ 4 ]

3 голосов
/ 30 апреля 2012

путь к sqlite обычно является проблемой.

'NAME': 'c:/path/to/sqlite.db'
2 голосов
/ 06 мая 2019

Выполнение миграций решит проблему.

Запустите следующие команды:

python ./manage.py migrate

python ./manage.py makemigrations
2 голосов
/ 16 сентября 2012

Попробуйте это

from os.path import dirname, abspath
ROOT = dirname(abspath(__file__)).replace('\\', '/') + '/'

print "self.__name__: " + __name__
print "self.__file__: " + __file__
print "ROOT: " + ROOT

import django
print "django.__path__: " 
print (django.__path__)

# Contact for error messages etc. - dont forget the ',' after the first entry

ADMINS = (('dev', 'dev@example.com'),)
MANAGERS = ADMINS

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.sqlite3',        
'NAME': ROOT + 'project.db',                      
    'USER': '',    'PASSWORD': '',
    'HOST': '',    'PORT': '',                      
}
}

и убедитесь, что вам нужно + '/' + перед именем базы данных для вашей операционной системы.

0 голосов
/ 28 июня 2017

Выполнение в следующем порядке работает нормально:

Сначала

 python manage.py migrate

Затем

 python manage.py runserver.

Поскольку мы применяем все миграции до запуска сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...