мне нравится как автор каждый урок повторяет снова и снова базовые шаги, ведь именно это помогает обучиться, а так поясняет что к чему обращается, с каким методом идёт работа...Просто прекрасный курс, спасибо огромное.
Не перестаю восхищаться этими уроками, их запросто можно было бы назвать "django для самых маленьких" потому что так понятно и доходчиво объяснено. Искренне благодарю Вас за ваш труд.
Учусь в Нетологии , честно тут доступнее объясняют, регулярно смотрю параллельно со своими занятиями. Огромная человеческая благодарность автору курса!
соболезную , сам учился там отдал 115к , ТП не отвечает, налог вернуть не могу, закончил обучение 1.5 месяца назад, и до сих пор мой диплом не напечатали , жду((( теперь понял что без бумажки ты ка___шка работает только для тех кто эти бумаги печатает. Я думал в этом году сходить с этой докой до универов возьмут ли меня на 3 курс с ними...а нет , ждём переждём.
Очень обидно, что миллионы просмотров набирают всякие "ТикТокеры" льющие себе молоко на голову... и т.д. Вот такие уроки у таких авторов должны быть миллионные просмотры! Автору огромное спасибо! Лучшего объяснения материала в просторах интернета ещё не встречал. Палец вверх под каждым видео! И подписка само-собой!
Не, Тиктоки , о которых вы говорили подходят для людей любого возраста, а курс по джанго, который создан для узкой направленности в программировании, для отдельного языка, да еще и на русском языке, просто не может набирать большие просмотры. Не знаю как работают просмотры в ютубе, считается ли то, пересмотрел человек 1 раз или 2 раза, но если смотреть с относительной стороны, то у этого курса даже побольше просмотры будут.
Я уже почти год занимаюсь разработкой на python\django, но было очень полезно пересмотреть уроки и структурировать знания. Спасибо за потраченное время и ваш труд!
Не давно смотрел уроки на другом канале и они мне нравились,но потом случайно наткнулся на ваши видео и я понял, что прошлые видео и рядом не стояли с вашими. Вы пожалуй лучше всех обьясняите эту тему и другие наверное тоже( пока, что успел глянуть только уроки по jinji2 и по sql, мне они понравились!) Продолжайте в том же духе :3
Это лучший курс по Джанго. Очень понятно, очень подробно. Спасибище огромное!!! Жаль что в этом видео не нашёл как загрузить статический файл картинку. "Будем искать"
0:00 - использование тега URL для формирования маршрутов к URL-схемам 3:42 - Создание страниц и ссылок для пунктов меню хедера 7:50 - Создание динамических ссылок на уровне шаблонов 11:06 - Формирование динамических URL-адресов, связанных с БД, с помощью метода get_absolute_url
Фух, оказалось самой тяжкой темой для меня. Отличный ролик, как всегда спасибо. Умудрился сделать чтобы внутрь новой страницы передавалась вся информация объекта через get(pk=id) теперь внутри страницы есть полноценный html с которым можно работать. Спасибо за урок)
Получается, что для создания каждой ссылки на странице django будет обращаться к базе данных (выполняя метод get_absolute_url)? И если таких ссылок на странице 100 штук, то это 100 обращений. Используя обычный url в шаблоне, мы можем предварительно одним запросом (или не одним?) получить всю информацию из базы данных и передать ее в шаблон. В таком случае нагрузка на бд будет снижена, насколько я понимаю. Почему тогда метод get_absolute_url рекомендуется к использования самой документацией django?
Сергей, сколько чел. часов уходить на создание 1 часа видео с учётом всех дополнительных материалов которые вы предоставляете? Я думаю, около 5 часов. Благодарю!
я что-то запутался. а откуда в блоке mainmenu при переборе списка menu взялся m.title еще до словаря, или я упускаю что-то, ведь страница запускается, слишком много title
Спасибо за подробный разбор всех деталей! И вот вопрос возник: а чем отличается строка return render(request, 'women/about.html', {'menu': menu, 'title': 'О сайте'}) в функции about от строки return HttpResponse("Добавлние статьи") в функции addpage? Они на сайте ведь вроде одинаково работают
Доброго времени суток. У Вас случайно нету видеоУроков - создание интернет магазина на django? Горю по срокам. .. Или быть может Вы за такие проекты беретесь?. Верстка готова...
Друзья, если возникла проблема на данном этапе: 14:08 Проверьте себя с данным параметром в файле index.html: href="{{ p.get_absolute_url }}" Там НЕ должны оставаться знаки "%", сам не заметил данной ошибки и потратил на это минут 20)
Подскажите, пожалуйста, в чем ошибка? Как только я в тег добавляю {% m.url_name %} происходит ошибка Invalid block tag on line 20: 'm.url_name', expected 'elif', 'else' or 'endif'. Did you forget to register or load this tag?
Прошу прощения но я не понял ... а как появляется логотип ? Там ведь просто div , без тега img ... Это какая то магия вне хогвартса ? Вроде в предыдущих уроках об этом даже упоминания не было , да и в интернете тоже ничего нет об этом . Сижу уже час и никак не пойму как же выводятся изображения на сайте если мы вообще не прописываем тегов img
Почему мы в шаблоне base.html в теге for для верхнего меню к ключу словаря из списка menu обращаемся через точку, а не как положено? Т.е. мы прописываем так m.url_name, хотя должны были прописать так m['url_name']. В видео на 7:04. Эта такая особенность шаблонизаторов (Django, jinja)?
Если я правильно понял, то когда мы в функции создаем словарь 'context', обращаться в шаблоне можно без указания словаря, а сразу к его ключам, как к переменным?
После ввода конструкции "{% url 'post' p.pk %}" у меня выдает ошибку при входе на сайт Reverse for 'post' with arguments '('',)' not found. 1 pattern(s) tried: ['post/(?P[0-9]+)/\\Z'] Не пойму как ее исправить?
Возможно, у меня немного дилетантский вопрос, но всё-таки хочется понимать: Почему сервер выдаёт ошибку когда я в своём файле urls.py пишу имя моего представления, к примеру show_post, без приставки views? То есть views.show_post работает а path('post//', show_post, name='post'), так не работает =/
@@lalkabest1065 у меня прописано: from . import views, то есть я подключаю этот файл views из текущей категории целиком, он там же где у меня файл urls.py находится. Если написать from .views import * то почему-то тоже ошибку выдает: "NameError: name 'views' is not defined ", хотя они в одном месте эти файлы находятся и джанго должен его видеть.
Привет, а как формировать ссылки с аргументами через амперсанду? А то во фласке попроще было, в url _for указал неожиданный аргумент и появилось, а тут чёт так не работает)
@@selfedu_rus как получить-то понятно, я имел в виду как их туда добавить) просто иногда хочется добавить какой-нибудь аргумент next, который будет хранить информацию о том откуда пользователь перешёл
Здравствуйте! В первую очередь, конечно, спасибо вам за ваши уроки. И у меня вопрос. Целый день мучаюсь не могу установить бэкграунд для своей страницы. Ни в CSS ни прямо прописывая в HTML файле( Я пишу вот так style=" background-size: cover; background-image: {% url 'chemistry/images/b1.png' %}" и получаю на выходе следующее: NoReverseMatch at / Reverse for 'chemistry/images/b1.png' not found. 'chemistry/images/b1.png' is not a valid view function or pattern name. Как только стираю эту строчку - все работает. Очень нужна ваша помощь. Спасибо. (В интернете гуглила - не помогло). Bootstrap успешно подключила, и использовала шаблоны.
Во-первых, посмотрите, какой путь у вас получается в HTML-странице в браузере, корректно ли формируется путь. Во-вторых, нужно убедиться, что верно настроено подключение media-файлов в пакете конфигурации (файл settings.py). Об этом было отдельное занятие. Также убедитесь, что находитесь в режиме отладки DEBUG=True.
Я не знаю, разбиралось ли это далее по курсу, но можно как-то дополнительно избежать дублирования и не передавать в контекст каждого view коллекцию menu? Сделать так, чтобы меню формировалось в base.html независимо оттого, на какой странице мы находимся Я попробовал сам и у меня не получилось, на странице about меню не формируется :) Если было разобрано, то ткните пж
href="{% url 'home' %}" - ни в коем разе не спорю, что так правильнее, но и href="home" при всех остальных равных так же работает. Почему так, не знаю. УПД: Я кажись понял. Я хомяка дополнительно прописывал в урлах так же, как и пустой адрес (' ')
мне нравится как автор каждый урок повторяет снова и снова базовые шаги, ведь именно это помогает обучиться, а так поясняет что к чему обращается, с каким методом идёт работа...Просто прекрасный курс, спасибо огромное.
Не перестаю восхищаться этими уроками, их запросто можно было бы назвать "django для самых маленьких" потому что так понятно и доходчиво объяснено. Искренне благодарю Вас за ваш труд.
или джанго для сладких пусечек, они ведь тоже смотрят
Учусь в Нетологии , честно тут доступнее объясняют, регулярно смотрю параллельно со своими занятиями. Огромная человеческая благодарность автору курса!
соболезную , сам учился там отдал 115к , ТП не отвечает, налог вернуть не могу, закончил обучение 1.5 месяца назад, и до сих пор мой диплом не напечатали , жду((( теперь понял что без бумажки ты ка___шка работает только для тех кто эти бумаги печатает.
Я думал в этом году сходить с этой докой до универов возьмут ли меня на 3 курс с ними...а нет , ждём переждём.
Спасибо огромное Вам, Сергей, Вы делаете большое и доброе дело! Ещё раз человеческое спасибо!
Очень обидно, что миллионы просмотров набирают всякие "ТикТокеры" льющие себе молоко на голову... и т.д. Вот такие уроки у таких авторов должны быть миллионные просмотры! Автору огромное спасибо! Лучшего объяснения материала в просторах интернета ещё не встречал. Палец вверх под каждым видео! И подписка само-собой!
не, не обидно, меньше конкуренция)
@@ВладимирКоваленко-ъ6о Хороший специалист конкуренции не боится )
Не, Тиктоки , о которых вы говорили подходят для людей любого возраста, а курс по джанго, который создан для узкой направленности в программировании, для отдельного языка, да еще и на русском языке, просто не может набирать большие просмотры.
Не знаю как работают просмотры в ютубе, считается ли то, пересмотрел человек 1 раз или 2 раза, но если смотреть с относительной стороны, то у этого курса даже побольше просмотры будут.
Автор, не пропущу ниодного твоего видео и обязательно поставлю лайк и комментарий! Советую всем!
Я уже почти год занимаюсь разработкой на python\django, но было очень полезно пересмотреть уроки и структурировать знания. Спасибо за потраченное время и ваш труд!
Здравствуйте. А как нашли первую работу и что в основном от Вам требовалось, как от начинающего разработчка?
@@РоманТорунов-ъ1р я давно в разработке
Автор очень интересно и доступно обьясняет материал. Спасибо. Жду продолжения.
Спасибо, как всегда доступно и последовательно.
Класс, ещё раз спасибо за уроки. Стеаринов стараюсь осваивать постепенно, так лучше укладывается в голове. Ну и ещё пару источников смотрю)
Спасибо автору! Очень доходчиво и подробно!
Спасибо! очень позновательный урок! И отдельня благодарность, что Вы уделяете внимания тонкостям!!!!
Не давно смотрел уроки на другом канале и они мне нравились,но потом случайно наткнулся на ваши видео и я понял, что прошлые видео и рядом не стояли с вашими. Вы пожалуй лучше всех обьясняите эту тему и другие наверное тоже( пока, что успел глянуть только уроки по jinji2 и по sql, мне они понравились!)
Продолжайте в том же духе :3
Комментарий для поддержки канала 🖐️😉
Очень доходчиво рассказываете. Огромное спасибо.
Это лучший курс по Джанго. Очень понятно, очень подробно. Спасибище огромное!!! Жаль что в этом видео не нашёл как загрузить статический файл картинку. "Будем искать"
Это будет в последующих занятиях.
@@selfedu_rus Очень-очень жду))
@@selfedu_rus Круто, а в каком плейлисте?
@@ahil7800 в этом же, через некоторое время
Лаконично, понятно, доступно. Хотелось бы продолжения тем по Django.
Сергей, спасибо большое!
Спасибо за урок, спасибо, что продолжаете.
0:00 - использование тега URL для формирования маршрутов к URL-схемам
3:42 - Создание страниц и ссылок для пунктов меню хедера
7:50 - Создание динамических ссылок на уровне шаблонов
11:06 - Формирование динамических URL-адресов, связанных с БД, с помощью метода get_absolute_url
Спасибо, тоже добавил!
Благодарю за материал. ! Очень полезная информация.
Фух, оказалось самой тяжкой темой для меня. Отличный ролик, как всегда спасибо. Умудрился сделать чтобы внутрь новой страницы передавалась вся информация объекта через get(pk=id) теперь внутри страницы есть полноценный html с которым можно работать. Спасибо за урок)
Как всегда на высоте, спасибо большое!
Спасибо автору!
Для тех, кто не может понять откуда взялась ''p'
Все просто. Выше идет перебор в цикле фор - {% for p in posts %}
Не поверишь, но именно это было единственным , что я недопонял в этом уроке и твой коммент все разрешил, красава, жму руку🤝
Спасибо за видео!
Спасибо!
Большое спасибо, все понятно! 👍🏼
Spasibo bolshoe za video!!!!!!!!
Просто лучший! Спасибо!
"Не лучший путь" 1:54 отличный каламбур
Супер пупер* урок!))☺️
Получается, что для создания каждой ссылки на странице django будет обращаться к базе данных (выполняя метод get_absolute_url)? И если таких ссылок на странице 100 штук, то это 100 обращений. Используя обычный url в шаблоне, мы можем предварительно одним запросом (или не одним?) получить всю информацию из базы данных и передать ее в шаблон. В таком случае нагрузка на бд будет снижена, насколько я понимаю. Почему тогда метод get_absolute_url рекомендуется к использования самой документацией django?
Отличное видео!
Бля, selfedu обрати внимание на джанго бук и доки сайта джанго.
Доки очень подробные. А материал твой очень хорош.
Сергей, сколько чел. часов уходить на создание 1 часа видео с учётом всех дополнительных материалов которые вы предоставляете? Я думаю, около 5 часов. Благодарю!
да, около 4-5 часов
я что-то запутался. а откуда в блоке mainmenu при переборе списка menu взялся m.title еще до словаря, или я упускаю что-то, ведь страница запускается, слишком много title
Спасибо за подробный разбор всех деталей! И вот вопрос возник: а чем отличается строка return render(request, 'women/about.html', {'menu': menu, 'title': 'О сайте'}) в функции about от строки return HttpResponse("Добавлние статьи") в функции addpage?
Они на сайте ведь вроде одинаково работают
все, дальше поняла в чем отличие. Еще раз спасибо большое!
Доброго времени суток. У Вас случайно нету видеоУроков - создание интернет магазина на django? Горю по срокам. .. Или быть может Вы за такие проекты беретесь?. Верстка готова...
Немного не понятно, почему вызвали именно функцию reverse для get_absolute_url.
Да, то же не понял
все круто, но для новичков как я, имена переменных не надо наверно делать одинаковыми с параметрами имхо
Если я введу в моделях еще один класс, для него нужно будет отдельно прописывать get_absolute_url. Джанго сможет их различить за счет полиморфизма?
You are cool bro
Друзья, если возникла проблема на данном этапе: 14:08
Проверьте себя с данным параметром в файле index.html: href="{{ p.get_absolute_url }}"
Там НЕ должны оставаться знаки "%", сам не заметил данной ошибки и потратил на это минут 20)
это есть в видео
Большое спасибо!
Подскажите, пожалуйста, в чем ошибка? Как только я в тег добавляю {% m.url_name %} происходит ошибка
Invalid block tag on line 20: 'm.url_name', expected 'elif', 'else' or 'endif'. Did you forget to register or load this tag?
Включил видео с начала и разобрался! Нужно писать не {% m.url_name %},
а {% url m.url_name %}, не указал название тега))
почему буква p.разрешает нам в index.html использовать функцию ? она магическая ?
потому что {% for p in posts %} Автор просто использовал ее в цикле для обозначения одного элемента последовательности.
👏👍
На сколько правильно засовывать метод get_absolut_url в слой орм?
Прошу прощения но я не понял ... а как появляется логотип ? Там ведь просто div , без тега img ... Это какая то магия вне хогвартса ? Вроде в предыдущих уроках об этом даже упоминания не было , да и в интернете тоже ничего нет об этом . Сижу уже час и никак не пойму как же выводятся изображения на сайте если мы вообще не прописываем тегов img
на память не помню, но скорее всего описан background с загрузкой фонового изображения для div в css
Спасибо
Почему мы в шаблоне base.html в теге for для верхнего меню к ключу словаря из списка menu обращаемся через точку, а не как положено? Т.е. мы прописываем так m.url_name, хотя должны были прописать так m['url_name']. В видео на 7:04. Эта такая особенность шаблонизаторов (Django, jinja)?
без разницы, можно и так и так
Если я правильно понял, то когда мы в функции создаем словарь 'context', обращаться в шаблоне можно без указания словаря, а сразу к его ключам, как к переменным?
да, там такой синтаксис на уровне шаблона
@@selfedu_rus понял, спасибо за ответ.
почему в [block mainmenu] m.title работает, а не m['title']?
После ввода конструкции "{% url 'post' p.pk %}" у меня выдает ошибку при входе на сайт Reverse for 'post' with arguments '('',)' not found. 1 pattern(s) tried: ['post/(?P[0-9]+)/\\Z'] Не пойму как ее исправить?
Все, получилось. У меня же в цикле i а не p
Кто ты воин? 😁
Возможно, у меня немного дилетантский вопрос, но всё-таки хочется понимать:
Почему сервер выдаёт ошибку когда я в своём файле urls.py пишу имя моего представления, к примеру show_post, без приставки views?
То есть views.show_post работает а
path('post//', show_post, name='post'),
так не работает =/
Мб у вас прописан import views вместо from .views import * ?
@@lalkabest1065 у меня прописано:
from . import views, то есть я подключаю этот файл views из текущей категории целиком, он там же где у меня файл urls.py находится.
Если написать from .views import * то почему-то тоже ошибку выдает: "NameError: name 'views' is not defined
", хотя они в одном месте эти файлы находятся и джанго должен его видеть.
👍
Привет, а как формировать ссылки с аргументами через амперсанду? А то во фласке попроще было, в url _for указал неожиданный аргумент и появилось, а тут чёт так не работает)
В url_for это не нужно делать, параметры GET-запроса можно получить через объект request.GET
А вообще параметр в url_for записывают через пробел, но он должен при этом соответствовать шаблону URL-адреса
@@selfedu_rus как получить-то понятно, я имел в виду как их туда добавить) просто иногда хочется добавить какой-нибудь аргумент next, который будет хранить информацию о том откуда пользователь перешёл
У меня не загружается ссылка "читать пост " все писала правильно. Help me please 🙏
Почему у меня в файле about.html не наследуется block mainmenu?
Из-за этого у меня шапка сайта не показывается при переходе на страничку about/
Вам на такие общие вопросы вряд ли кто-то ответит, много разных нюансов может быть.
@@selfedu_rus проблема была в том, что я забыл прописать menu в словаре context.
Но в любом случае, спасибо что откликнулись на мою проблему.
Не могу понять , почему имя модели в шаблонах используется как 'p' ? Откуда она взялась , почему именно 'p'?
так там же выше {% for p in posts %}
@@selfedu_rus а, понял , невнимателен) Спасибо
почему post_id не могу уловить суть
Здравствуйте! В первую очередь, конечно, спасибо вам за ваши уроки. И у меня вопрос. Целый день мучаюсь не могу установить бэкграунд для своей страницы. Ни в CSS ни прямо прописывая в HTML файле( Я пишу вот так style=" background-size: cover; background-image: {% url 'chemistry/images/b1.png' %}" и получаю на выходе следующее: NoReverseMatch at /
Reverse for 'chemistry/images/b1.png' not found. 'chemistry/images/b1.png' is not a valid view function or pattern name. Как только стираю эту строчку - все работает. Очень нужна ваша помощь. Спасибо. (В интернете гуглила - не помогло). Bootstrap успешно подключила, и использовала шаблоны.
Во-первых, посмотрите, какой путь у вас получается в HTML-странице в браузере, корректно ли формируется путь. Во-вторых, нужно убедиться, что верно настроено подключение media-файлов в пакете конфигурации (файл settings.py). Об этом было отдельное занятие. Также убедитесь, что находитесь в режиме отладки DEBUG=True.
Я не знаю, разбиралось ли это далее по курсу, но можно как-то дополнительно избежать дублирования и не передавать в контекст каждого view коллекцию menu? Сделать так, чтобы меню формировалось в base.html независимо оттого, на какой странице мы находимся
Я попробовал сам и у меня не получилось, на странице about меню не формируется :)
Если было разобрано, то ткните пж
А в чем смысл это действия?
@@vladimirdo избавиться от дублирования? DRY?
Сложный урок( Очень Не понял до конца как работает get_absolute_url
называть словарь так же как и специальный именованный параметр context наверное не лучшая идея, это немного путает
Я конечно затупок ещё тот, но что за posts, непонятно откуда оно берётся, как оно связанно с классом women, хоть убей не нашёл где это прописано
пост находится во views, в функции index
posts = Women.objects.all()
Он подсасывает инфу из модели, данные которой находятся в бд
@@standvik1159 да, уже разобрался, спасибо)
по сравнению с предыдущими уроками много скомканной информации. осилить не удалось
Не совсем понятно. В каком месте описано, что p это экземпляр класса Women
+
Не пойму почему "р" - это ссылка на класс Woman, где это биндилось?
Возможно уже ненужно, но p это элементы из posts
В какой момент "Читать пост" становится кнопкой? В синтаксисе нет ни button, ни input.
полагаю, что это и не кнопка, а просто ссылка, с соответствующим стилем из css
@@АлексейАлексеев-ц8х9т да, так и есть. Но как же в итоге образуется кнопка в этом учебном коде?))
href="{% url 'home' %}" - ни в коем разе не спорю, что так правильнее, но и href="home" при всех остальных равных так же работает. Почему так, не знаю.
УПД:
Я кажись понял. Я хомяка дополнительно прописывал в урлах так же, как и пустой адрес (' ')