Я работал над проектом Django, который в последнее время немного вырос. Я немного подумал о том, какую стратегию использовать, чтобы упростить управление. Одна вещь, которую я хотел бы получить, - это если бы я разделил свое приложение на несколько небольших приложений. Это уменьшит размер моего вида и файлов модели и разделит некоторые проблемы.
Меня беспокоит то, что в моих приложениях у меня будет несколько вспомогательных методов, которые будут использоваться в разных приложениях. Кроме того, некоторые модели также должны быть доступны для разных приложений. Будет ли это иметь смысл? Это плохо сочетается с разделением задач, которые я надеялся достичь, разделив свое приложение на несколько небольших приложений. Какой будет хороший подход для обмена вспомогательными методами, моделями и т. Д. Между приложениями?
источник
Мне нравится создавать
base/
приложение без просмотров и моментов для обмена материалами.Одной из проблем, которая может возникнуть при наличии моделей, распределенных по нескольким приложениям, является циклический импорт. Этого можно избежать, используя строки для ссылки на другие модели (
foo = ForeignKey("someapp.Foo")
вместоfoo = ForeignKey(someapp.models.Foo)
). Django позволяет вам использовать такие строки в других местах.источник