#python #django #orm #legacy-database
#python #django #orm #устаревшая база данных
Вопрос:
Я собираюсь разработать API-интерфейсы django rest Framework с использованием устаревшей базы данных postgres, в которой, кроме существующих таблиц, не должны создаваться другие таблицы django по умолчанию. Я хотел бы знать, не создавая никаких таблиц django по умолчанию или не выполняя миграции,
- могу ли я получить доступ к записям из таблиц с помощью ORM?
- Могу ли я получить доступ к странице администратора без создания таблицы авторизации django (т.е. суперпользователя)?
- Если нет для обоих вопросов, единственный способ подключиться к БД — использовать любой адаптер БД, такой как psycopg2?
Ответ №1:
могу ли я получить доступ к записям из таблиц с помощью ORM?
Если схема одинакова в ваших моделях и таблицах БД, то да.
Могу ли я получить доступ к странице администратора без создания таблицы авторизации django (т.е. суперпользователя)?
Насколько я могу судить, нет, вы не можете получить это, если только в ваших существующих «таблицах» это уже не есть, и у вас есть все необходимые учетные данные.
Для вопроса в # 3 я бы использовал что-то менее сдерживающее, например, Flask, если у вас есть эти проблемы.
Комментарии:
1. Спасибо @0xc0de за подробный ответ. Несмотря на то, что имя схемы совпадает, при запросе django будет искать в таблице что-то вроде modelname_tablename, верно? Таким образом, очевидно, что в существующей базе данных не будет никакой таблицы.