Для сайта с низким трафиком было бы неплохо использовать слой маршрутизации Django, но если вы планируете получать значительный объем трафика, вы можете рассмотреть возможность использования заглушками вашего прокси-сервера.
В остальном, это работает, и сообщество TurboGears делает это годами (я был комментатором TG, так что я обычно использую). Архитектура TG по возврату словаря в шаблон делает это тривиальным, поскольку вы просто установили json в качестве механизма шаблонов.
Делать то же самое в Django не намного сложнее. Просто используйте инструменты serialization , чтобы записать результат в ответ, вместо использования шаблонных вызовов.
Обратите внимание, что когда вы делаете архитектуру, подобную этой, вам значительно легче управлять, если вы храните всю логику приложения в одном месте. Помещение некоторой логики приложения в Django и некоторое в браузер заставляет вещи довольно быстро запутываться. Если вы рассматриваете свой сервер как тупой постоянный уровень (за исключением проверки / аутентификации / авторизации), жизнь становится проще.
FWIW, я считаю, что с Sproutcore легче работать, чем с Cappuccino, если вы заинтересованы в более тяжелых средах с непрогрессивными улучшениями.