LINUX.ORG.RU

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

Обычно удобней работать с отдельными небольшими приложениями, чем с большими. Даже если между ними и есть связи, то если они завязаны на весь проект, все-равно удобней.

gruy ★★★★★
()
Ответ на: комментарий от gruy

Ну что если например взять простой бложик - статья и комменты к ней. В модели этой беды будет записано, так, что таблица «статьи» будет иметь поле «один ко многим» к таблице «комменты».

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

Siado ★★★★★
() автор топика
Ответ на: комментарий от Siado

В маленьких проектах можно все и в одном приложении держать. И ничего не повторяться не будет. В случаях с комментариями нужно использовать contenttypes.

Но и с другой стороны возникает путаница с моделями в базе данных.

Какая путаница?

gruy ★★★★★
()
Ответ на: комментарий от Siado

Для комментов есть готовые приложения, которые запросто интегрируются в проект.
Я у себя сделал иначе. У меня есть базовая модель и модели реквизитов, прикручиваемые к базовой модели. Например, пост - это заголовок и текст, коммент - это текст (+ заполненный родитель из базовой модели, указывающий на ОП-пост). В моем случае получилось, что у меня одно приложение с моделями данных, а остальные с вьюшками, в которых задаются правила отбора объектов, относящихся к приложению. Но я свой вариант никому советовать не буду, т.к. куча связей сильно утяжеляет запрос и как оно будет себя вести не в качестве тестового проекта я не берусь сказать.

winlook38 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.