Подтвердить что ты не робот

Разделение представлений Django App

Если файл app/views.py становится очень большим, следует ли его отделить? Если да, то каков наилучший способ сделать это?

4b9b3361

Ответ 1

Нет общего универсального способа. Но есть правильный путь для вашей ситуации.

  • поместите представления в свои собственные файлы и импортировать их в ваше представление. Это хорошо, чтобы увидеть, как это работает.
  • создать отдельное приложение внутри проекта для поддержки набора представлений
  • создайте собственные общие представления, которые разделяют взгляды, общие для большинства ваших приложений.

Как пример: Я рекомендую вам начать с модели и работать самостоятельно:

  • Как у вас много моделей?
  • На самом ли деле все связаны или могут быть сгруппированы?
  • если сгруппировано, разделите приложение на два приложения
  • чтобы вы также разделили представления
  • определить, какие функции просмотра схожи и сделать их generic.

Ответ 2

Некоторые разработчики делают свои представления

Ответ 3

Я бы выделил представления с аналогичной целью или функциональностью в один файл и включил это в views.py. Я делаю это только для удобства чтения и обслуживания. Например, CRUD-представления для определенного объекта или группы объектов.

Импортируя эти представления непосредственно в основной файл views.py, он позволяет людям, не знакомым с вашим соглашением, найти, где.

views/object_view.py

Ответ 4

В идеальном мире вам не обязательно это делать. Вместо этого попробуйте реорганизовать свой код в разные приложения для django для каждой подцели, которые необходимы вашему проекту. Таким образом, вы можете разделить свой проект еще лучше, чем вы могли бы, если бы вы разделили только файл views.py.

Для получения советов о том, как разделить проект на разные приложения, я рекомендую прочитать практические Django Projects Джеймса Беннетта, и это то, что я перечитываю прямо сейчас:)