Еще бы Джанга не была такой сырой, как она есть пока что...
Или я чего-то в ней решительно не понимаю, или от lose coupling там только слова, а так все (вся auth-система, админка, да и вообще чуть ли не весь contrib, ORM и т.д.) заточены только на работу друг с другом. Любой «нестандарт» приводит к ангсту, шмерцу и костылям.
Брать юзеров с существующей базы и аутентифицировать по существующей куке, скажем. Это надо или дублировать базу пользователей (жопа с синхронизацией) или делать свой User. Попытка сделать свою модель User напарывается на то, что django.contrib.auth надо переписывать на свой велосипед или скатываться в бездны очень злого monkey patching'а. Про админку при этом приходится забывать сразу и навсегда. Попытка заменить models.Model на что-то свое (или, скажем, просто SQLAlchemy) выглядит тоже неутешительно... А без всего этого остается совсем голый скелетик — только общая концепция model-template-view что, конечно, тоже фреймворк, но как-то уже не то...
Ждем, как минимум, queryset-refactor и newforms-admin, да...
Да, вроде, всем устраивают (а еще лучше бы устраивали если бы я побольше покопался и нашел их раньше, чем я начал делать один проект на Django и понаписал там достаточно кода). Я просто про Django пожаловался.
Типичная ситуация. Человек ошибся с выбором инструментов для проекта и начал винить в последовавших потом трудностях Джангу. Тебя кто-то заставлял брать всю джангу целиком? Тебя вообще кто-то заставлял брать джангу? Для своих задач она очень хороша. Но эти задачи ограничены определёнными рамками, особенно если проект базируется на работающей системе.
Думать надо.
> Типичная ситуация. Человек ошибся с выбором инструментов для проекта и начал винить в последовавших потом трудностях Джангу.
Джанга не при чем, фреймворк она вполне хороший. А вот рекламируемый ими loose copuling — таки отсутствует. Я _только_ об этом посожалел и не более того.
loose coupling вполне присутствует и auth backend можно заменить и движок сессий, и темпелейт энджин можно другой использовать. и даже другую models.Model. И куски стека можно использовать в сторонних проектах.
Да джанго не связка из сторонних проектов по типу TurboGears, это собственный полный стек, компоненты которого разрабатывались так, чтобы их было как можно удобнее использовать вместе. А весь contib да, завязан на стандартный стек и это логично.