Django и AJAX ∞
Джеймс Бенетт рассказывает о поддержке AJAX в Django. А я пересказываю :)
Тема Django+AJAX весьма "горяча". Django-разработчики говорят, что уже сейчас фреймворк готов для работы с AJAX. Джеймс Бенетт приводит пример нового модуля-сериализатора Django:
from django.core import serializers
def my_json_view(request):
data = serializers.serialize(“json”, MyModel.objects.all()[:5])
return HttpResponse(data, mime_type=”text/javascript”)
Данный пример возвращает пять последних объектов в формате JSON.
Однако, в сравнении с RoR и TurboGears, поддержка AJAX в Django лишь на стороне сервера. Джеймс Бенетт предлагает создавать JavaScript "руками". На это он приводит несколько причин:
- не хочется привязывать Django к какому-либо JS-тулкиту
- поддерживать все популярные JS-тулкиты в Django нет возможности
- Вы уже можете использовать AJAX в Django, и в действительности это совсем не сложно.
- Возможно, в будущем (после улучшения механизмов сериализации) это будет проще чем сейчас, и бдет еще проще если/когда мы сделаем API web-сервисов.
- Использование "помошников", чтобы не писать JavaScript, плохо и не правильно. Учите JavaScript. Пишите JavaScript. Это будет лучше для Ваc.
