API-интерфейсы django rest Framework с использованием устаревшей базы данных без создания таблиц django по умолчанию

#python #django #orm #legacy-database

#python #django #orm #устаревшая база данных

Вопрос:

Я собираюсь разработать API-интерфейсы django rest Framework с использованием устаревшей базы данных postgres, в которой, кроме существующих таблиц, не должны создаваться другие таблицы django по умолчанию. Я хотел бы знать, не создавая никаких таблиц django по умолчанию или не выполняя миграции,

  1. могу ли я получить доступ к записям из таблиц с помощью ORM?
  2. Могу ли я получить доступ к странице администратора без создания таблицы авторизации django (т.е. суперпользователя)?
  3. Если нет для обоих вопросов, единственный способ подключиться к БД — использовать любой адаптер БД, такой как psycopg2?

Ответ №1:

могу ли я получить доступ к записям из таблиц с помощью ORM?

Если схема одинакова в ваших моделях и таблицах БД, то да.

Могу ли я получить доступ к странице администратора без создания таблицы авторизации django (т.е. суперпользователя)?

Насколько я могу судить, нет, вы не можете получить это, если только в ваших существующих «таблицах» это уже не есть, и у вас есть все необходимые учетные данные.

Для вопроса в # 3 я бы использовал что-то менее сдерживающее, например, Flask, если у вас есть эти проблемы.

Комментарии:

1. Спасибо @0xc0de за подробный ответ. Несмотря на то, что имя схемы совпадает, при запросе django будет искать в таблице что-то вроде modelname_tablename, верно? Таким образом, очевидно, что в существующей базе данных не будет никакой таблицы.