Использование существующей базы данных sqlite3 с django

Я начинаю работать с Django, и у меня есть этот конкретный вопрос относительно использования моей собственной базы данных SQLite с Django. Я имею в виду, что если я создаю новую базу данных и заполняю ее, все работает нормально. Вот моя ситуация сейчас.

У меня есть база данных в моем экземпляре retail_data.sqlite3 в BASE_DIR. Теперь я хочу использовать это в качестве данных, поэтому я иду и добавляю это в настройки следующим образом.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    },

    'retail_data':{
        'ENGINE':'django.db.backends.sqlite3',
        'NAME':os.path.join(BASE_DIR,'retail_data.sqlite3')

    }
}

Приведенный выше фрагмент кода копируется из этот сайт. Затем я использую команду inspectdb (python manage.py inspectdb --database = retail_data> salesapp / models.py) для создания файла models.py, который может использовать мою текущую базу данных. Также я обновляю файл admin.py, чтобы я мог видеть его из моей панели администратора. Однако в панели администратора, хотя таблица данных видна, я не могу просмотреть данные.

Я сомневался, действительно ли база данных состоит из данных, поэтому я использовал простой pandas.read_sql_query для запроса базы данных, и в ней есть все необходимые данные. Как мне продолжить? Ваше руководство очень необходимо. заранее спасибо

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
809
1

Ответы 1

Вам также нужно будет указать Django, какие модели используют базу данных, которую вы назвали 'default', а какие модели используют базу данных 'retail_data'.

Вы делаете это, написав класс маршрутизатора базы данных.

Привет, Джеймс, я тоже так делал, но получаю тот же результат. В базе данных есть данные, но они не отображаются в админке.

Abhishek 01.05.2018 14:24

Другие вопросы по теме