@dawasaturday

Что такое файл models в проекте django?

Я верно понимаю, что файл models.py - это файл, где мы создаём бд для нашего проекта?
Если да, то наверняка можно создавать модель в SQLite studio и затем использовать её в проекте?
Тогда код в этом файле должен сгенерироваться по созданному файлу из SQLite studio?
  • Вопрос задан
  • 1048 просмотров
Пригласить эксперта
Ответы на вопрос 3
fox_12
@fox_12 Куратор тега Django
Расставляю биты, управляю заряженными частицами
Я верно понимаю, что файл models.py - это файл, где мы создаём бд для нашего проекта?

Модель - сущность из конкретной задачи над которой вы работаете. Будь то пользователь, статья, продукт или еще что со всеми их взаимоотношениями, относящимися к данному приложению.
В Django модели принято размещать в models.py
Сами таблицы в БД создает Django автоматически. Примерное представление вы сможете получить если почитаете о миграциях https://docs.djangoproject.com/en/1.9/topics/migra...

Если да, то наверняка можно создавать модель в SQLite studio и затем использовать её в проекте?

Можете. Только сильно осложните себе жизнь.
Работа с моделями абстрагирует вас в какой-то степени от конкретной их реализации в конкретной ДБ, и перекладывает львиную долю работы на саму систему Django. Также не забудьте что Django создает также служебные таблицы необходимые для работы - для хранения сессий, типов моделей, пользователей и групп, и пр.

Тогда код в этом файле должен сгенерироваться по созданному файлу из SQLite studio?

Можно сделать и так. Командой manage.py inspectdb сгенерить модели из существующей базы, и попробовать их завести в проекте на Django. Но опять таки - вы сильно осложните себе жизнь. Обычно это требуется, когда необходимо связать Django с уже существующими таблицами в сторонней БД для работы с ними как с моделями. Обычно эти модели прописывают как модели с флагом managed=False, дабы Django не влияла на структуру уже существующей БД.
Ответ написан
Я верно понимаю, что файл models.py - это файл, где мы создаём бд для нашего проекта?
Нет.

Если да, то наверняка можно создавать модель в SQLite studio и затем использовать её в проекте?
Там вы можете создать таблицы, но не модели.
Ответ написан
Комментировать
Это файл, где мы описываем\проектируем модель для нашей ORM, в файлике может быть куча классов моделей что в будущем = таблица в БД, Атрибуты в модели = в будущем атрибуты таблиц.
В конечном счете структуру заливает ОРМ командами джанго makemigrations [app]\migrate [app]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы