Получение запроса на совпадение с сайтом не существует Ошибка после создания администратора django

Я использую стандартный учебник Django для создания администратора для приложения. После комментирования связанного с администратором материала в настройках и запуска syncdb я получаю это сообщение:

DoesNotExist at /admin/ Site matching query does not exist. 

Может ли кто-нибудь помочь мне понять это?

7 Solutions collect form web for “Получение запроса на совпадение с сайтом не существует Ошибка после создания администратора django”

Объект Site для вашего проекта Django отсутствует. Каждый проект Django имеет объект Site который содержит имя и домен сайта. Обычно он создается автоматически при создании проекта Django (в частности, когда выполняется команда syncdb ), но в вашем случае кажется, что этого не произошло.

Исправить это:

Откройте оболочку Django для вашего сайта ( python manage.py shell ).

Введите следующее:

 >>> from django.contrib.sites.models import Site >>> Site.objects.create(name='example.com', domain='example.com') 

Если вы хотите позже изменить эти значения, перейдите на панель администратора ( /admin/ ) и отредактируйте объект сайта в разделе « Sites .

В дополнение к ответу Симеона Виссера, для тех из вас, которые все еще испытывают проблемы, убедитесь, что переменная SITE_ID в ваших настройках соответствует идентификатору вашего вновь созданного Site .

Когда вы включаете django.contrib.sites в ваш INSTALLED_APPS и запускаете команду «python manage.py migrate», приложение автоматически создает объект в таблице «django_site» (с именем домена и отображаемым именем равно «example.com». не нужно создавать его самостоятельно.

Вероятно, вам просто нужно добавить параметр SITE_ID = 1 в файл settings.py.

Вы также можете рассмотреть возможность использования функции fixture django для автоматического заполнения данных: https://docs.djangoproject.com/en/dev/howto/initial-data/

 [ { "model" : "sites.site", "pk" : 1, "fields": { "name" : "example.com", "domain" : "127.0.0.1:8010" } } ] 

Запустите django.contrib.sites из установленных приложений. т.е.

 #'django.contrib.sites', 

Я новичок в Django. У меня такая же ошибка при просмотре учебника. django_site DB была пуста. Я решил удалить все таблицы с именем «django_ *». Затем, когда я перезапускал syncdb , были созданы отсутствующие таблицы django, а таблица django_site DB была заполнена id = 1, domain = example.com, name = example.com. Очевидно, что класс Site поддерживается django_site DB django_site . Теперь я понимаю проблему и решение выше, которое заполняет таблицу с помощью Site.objects.create() . Спасибо Симеон.

Если вы используете инструменты South и initial_data, данные могут быть загружены неправильно. Чтобы исправить это, добавьте

 if 'test' in sys.argv or 'jenkins' in sys.argv: SOUTH_TESTS_MIGRATE = False 

в конце файла настроек

 
Interesting Posts for Van-Lav

Общий способ получения первичного ключа из декларативно определенного экземпляра в SQLAlchemy

Выравнивание текста и значка в поле легенды (matplotlib)

Разбор твита для извлечения хэштегов в массив в Python

Python Pandas управляет файловым кадром

Python – вычислять среднее значение для каждого столбца в файле csv

Как отправить электронное письмо с помощью Gmail в качестве поставщика с помощью Python?

Является ли AES-CTR в CryptoJS совместимым с PyCrypto?

Добавление атрибутов класса с использованием цикла for в Python

Несколько потоков Python, обращающихся к одному файлу

Получить изображения из db по полям. Функция в отчете QWeb – Odoo 8

Реализация сигнала Django post_save ()

Почему синтаксис C ++ настолько сложный?

Есть ли библиотека для десериализации с помощью python, которая сериализована с помощью java

gstreamer playbin – настройка uri на окнах

Что может привести к тому, что диалоговое окно открытого файла в Tkinter / Python будет очень медленно закрываться после того, как пользователь выберет файл?

Python - лучший язык программирования в мире.