Таким образом в моем проекте Django у меня есть несколько различных приложений, каждый с их собственными Моделями, Представлениями, Шаблонами, и т.д. Что такое хороший путь ("Django" путь), чтобы иметь эти Приложения связываются?
Определенным примером было бы Приложение Встреч, которое имеет модель для Встреч, и у меня есть Домашнее Приложение, в котором я хочу отобразить лучшие 5 Встреч по домашней странице.
Представление Домашнего Приложения должно просто запросить Модель Приложения Встреч?
Такое чувство, что это пересекает некоторую строку и мог бы быть более отделенный способ сделать вещи как это в Django.
В какой-то момент ваши приложения будут приходится пара, чтобы получить любую работу. Вы не можете обойти это.
Если представление Home App только что запрашивает модель приложения собраний?
Да, вот как это сделано. Если вы действительно хотите отделить вещи, вы можете сделать свой приложение Home
, используя общие иностранные ключи, а какой-то универсальный шаблон, но не очень веская причина, если у вас нет грандиозных планов для вашего дома Приложение будет подключено и работает с кучей других разных приложений Django.
Написание тесно связанных приложений Django действительно просто, и писать отделенные приложения Django очень сложно. Не отвлекайтесь, если у вас нет причин, и вы спасти себя много работы (и счастье!).
да. Думаю, это особенность дизайна. Все модели имеют общий бэкэнд, так что вам придется проделать дополнительную работу, чтобы иметь две модели с одинаковыми именами в разных приложениях.
Проекты не должны разделять модели
.Если бы это был я, я бы сделал шаблонный тег в вашем приложении для встреч, которое производит желаемый вывод и включить этот шаблонный тег в шаблон домашнего приложения.
Таким образом, вы соединяете их только в View части MVC и облегчаете обслуживание, если вы меняете свои модели в приложении для встреч.
для достижения отделения как можно больше,
Вам необходимо иметь приложение для конкретного проекта, которое делает все присоединения между каждым Другой.
Использование сигналов от моделей для создания новых моделей в развязанных приложениях помогает. Но делать слишком много этого, глупо.