Я не увидел простоты в предложенном подходе. Мы же за простоту. Поэтому банально пользуемся jQuery и его ajax возможностями.
Делаем $.post
или $.get
на обычное представление, которое возвращает json или вообще готовый блок с html кодом (я стараюсь использовать второй вариант, он проще и понятнее).
Из моих наблюдений могу сказать, обычно все проблемы у народа от того, что они не понимают как работает HTTP и связка сервера с клиентом. Как только они осознают, что сервер принимает текст и отдаёт текст (неважно, на каком языке написан сервер и клиент), то сразу начинают задавать более интересные вопросы, а не стандартную банальщину.
Django и современные браузеры из коробки предоставляют такие возможности для отладки, о которых я в 1998 году даже мечтать не смел. Сейчас, мои проблемы с кодом в основном возникают из-за усталости или невнимательности, что впрочем довольно быстро можно решить.
Вот я и предлагаю, вам быть проще и использовать чистый jQuery, посмотреть, что отправляется на сервер через ваш ajax и посмотреть на ответ сервера. Всё сразу станет понятно.