№1 Практическая онлайн-школа обучения языкам программирования Python (Django), JavaScript, Kotlin В. Бовсуновского.

Специальная, подарочная акция получения доступа к Django4!

Как, я, начал код писать в Python? Смотрите, если уперлись и ничего не получается.

28. Рассказываю, обязательный min уровень JS для Django разработчика.

То, что мы с вами будем делать далее.

Рассказал алгоритм и пути использования js в Django, для того, что бы получить действия без перезагрузки страницы, суть в том, что комментарии, лайки, сохранение интересный записей. ответы на комментарии, если Вы хотите, что бы эти все действия происходили без перезагрузки страницы, необходимо понять алгоритм, как это делается. Это видео и рассказывает об этих действиях.

Так же рассказал немного о средах разработки и о любимом Emacs. Попробуйте.

-


-

#jsdjango

#ajaxdjango

Перейти к уроку

29. Практика использования Jquery Ajax + Django 4 в Emacs. Полная картина взаимодействия.

Занятие длинное 59 минут.

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

Перед этим длинным занятием ставилась задача.

Показать взаимодействие Ajax и Django, показать глде и что мы пишем, как связаны части Джанго, а именно представление, html файлы c Ajax JQuery.

Так же по ходу хотел дать направление для изучение, JQuery Ajax:

-показал как работать с документацией;

- что бы было понятно, что Джанго это одни знания;

- Питон это то что нам даёт понимать Джанго;

- Что Джанго использует библитеку http и она прописана в HttpRequest классе.

- Хотел показать, что Ajax о Джанго ничего не знает и мы прописываем селекторы.

- Заострил внимание. а как подступиться к JQuery Ajax, показал простоту.

- научитесь писать middleware (промежуточный слой), мы с вами написали функцию, которую убрали с Джанго 4 is_ajax() и сделали из неё middleware, теперь будет работать для всего проекта эта функция.

Что бы увидели, что современный разработчик оперирует знаниями разными и здесь не нужно отчаиваться, просто берём и делаем, а потом пер осмысливаем. Если поработать с месяц с Ajax, то все получится.

Главное, что у вас после просмотра видео будет понимание, как это используется в комплексе. А это уже даёт хорошую платформу для старта.

Так же хотел, что бы Вы узнали о Emacs и попробовали его, обязательно получится сделать среду своей мечты, ведь это прекрасно, когда вам то одного не хватает, и вы доделываете, потом следующее и следующее и у вас появится среда, которая вас будет радовать и вы полностью откажетесь от мыши, к этому стремится любой программист.

-

Перейти к уроку

30. Проходимся по коду комментариев. base.html

Разбирали код base.html я его дам и будете разбираться.

-

Перейти к уроку

31. Дописали вьюху деталей, вывода одной страницы. Код дал и пояснил.

Все рассказал в уроке, здесь главное понять одну вещь, что во вьюхе мы прописываем метод для интеграции с jquery. Все абсолютно шаблонно.

if request.is_ajax():
        html = render_to_string('blog/comments.html', context)
        return JsonResponse({"form": html})

Перейти к уроку

32. Пишем MIDDLEWARE для метода is_ajax().

MIDDLEWARE - находится в settings.py и выполняет роль промежуточного слоя и срабатывает до загрузки страницы, то есть уже при загрузке страницы, наш метод is_ajax(), точно будет работать и мы сможем взаимодествовать с js jquery, через JsonResponse(), которая будет получать и отдавать данные посредством json, но нам делать так же ничего не нужно все джанго сделает автоматом, создаст json, упакует, передаст от питон к js и получит. Приятно, что без бубнов.

пояснение. Ранее до джанго 4 был метод is_ajax(), но в джанго 4 его убрали, решили что пришло время писать на чистом js, все же я решил дерзнуть и написать свой MIDDLEWARE, для чего,

Ну во-первых Jquery недооценённая библиотека и очень хорошая, зачем чего то городить, если все можно написать пару строчками кода, ну а с другой стороны, ни кто ж не против, пишите на чистом js и будем писать далее, но все же решил, что хорошо. если у нас будет палочка-выручалочка. при помощи  jquery и что если этого нет в джанго, то мы можем сами все поправить, кстати и здесь мы все писали на чистом js  в самом MIDDLEWARE, как и требует джанго по новому, но решили все же сделать ещё одинр уровень защиты метод HTTP_X_REQUESTED_WITH не будет выполняться, если пользователь не авторизован, его мало кто использует или забыли, я в общем не в курсе почему.

def is_ajax(self):    return request.META.get(    'HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest'

Перейти к уроку