Специальная, подарочная акция получения доступа к Django4!
Как, я, начал код писать в Python? Смотрите, если уперлись и ничего не получается.
14. Зачем использовать namespace в url Django 4?
urlpatterns = [ ........ path('page/', include(("getlink_app.urls", 'yes_ns' ), namespace='yes_ns')), ]
(("getlink_app.urls", 'yes_ns' ) обратите внимание, после "getlink_app.urls" есть ещё, как бы дубляж нашего namespace 'yes_ns' , это мы не будем использовать, как правило это излишне, но если у вас будет ну очень сложный проект и нужно будет импортировать несколько раз ваш unclude, то тогда при одном и том же namespace, можно изменить имя главного url conf.
urlpatterns = [ ........ path('page/', include(("getlink_app.urls", 'yes_ns' ), namespace='yes_ns')), path('page/', include(("getlink_app.urls", 'yes_ns_two' ), namespace='yes_ns')), ]
-
Давайте научимся использовать namespace в приложениях, но сначала поймём суть.
Посмотрите на этот пример:
path("slug/", PageListView.as_view(), name='list'),# path('<str:slug>/', PageDetailView.as_view(), name="detail"), path("slug/", WorkListView.as_view(), name='list')),# path('<str:slug>/', WorkDetailView.as_view(), name="detail"),
Что в этих примерах не так?
Обратите внимание в двух приложениях одинаковые имена name=......
Это очень удобно, шаблоны можно менять друг с другом не переписывая кода. а только дописывая дизайн, но джанго выдаст ошибку, ведь имеются одинаковые имена.
Проблема решается добавлением пространства имён с которого Джанго будет начинать поиск. Это похоже на то, как в разных папках на компьютере лежать одни и те же файлы.
path('page/', include(("getlink_app.urls", 'yes_ns' ), namespace='yes_ns')), path('page/', include(("work_app.urls", 'work_ns' ), namespace='work_ns')),
Что мы сделали? Мы изменили названия пространств имён. Теперь джанго будет работать как часы.
Давайте научимся создавать такие приложения. И пока мы смотрим со стороны url, но при этом смотрим компексно, учитывая модель, представление, шаблон и сам url.
Здесь существуют подводные камни, я поискал исключения и нашёл, что часто спрашивают пользователи, их мы разберём, иногда на такие исключения уходят недели.
*/****Юмор черноватый, но так есть в большинстве случаем.
Этот юмур я написал о себе в первые годы программирования 2009-2011 гг.
Проблема та же, что и тады.
А тады хрен кто рассказал.
А ты спрашивал?
тАДЫ Спрашивал, почему не работает, У КОГО ТОЛЬКО НЕ СПРАШИВАЛ,... спрашивал у компьютера, спрашивал у браузера, спрашивал у гугла.
и ПОМНЮ ТАДЫ ЗЛОЙ БЫЛ, КАК СОБАКА.
А в документации смотрел тады...
А что там смотреть там ничего не понятно.
Ну а теперь работает.
Теперака работает.
А как нашёл.
Методом копирования и вставки на седьмой день заработала......
-----------------------------------------
Что бы такого не было, давайте продолжим работать с документацией.
И нарабатывать свою систему кода.
Обратите внимание на примере Джанго это методику можно использовать для любого языка и любой библиотеки.
Если использовать, то каша будет уходить и понимание будет приходить, при этом работает это в геометрической прогрессии, так как накапливаемый опыт работы с доками, на исключения будет тратится времени все меньше, а программирование станет захватывающий и уже будет задачами. которые интересно решать.
Если не работать над системой работы с кодом, то просто будет добавляется каша, а писать код так и начнёте пока не измените методику.
На основе опыта вывод можно сделать очень точный.
Если бежать не разбираясь, то в каша в голове будет накапливаться, а желание стать программистом таять.
В подходе, который я предлагаю.
Мы работает над системой работы с кодом и начинаем с функций доводим до автоматизма и пишем функции на любых языках. Это эффективно? Да эффективно. Хотя время затрачено было больше, но один раз.
https://spb-tut.ru/%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0/%D0%BF%D0%BE%D0%B4%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-python-%D0%BE%D0%BE%D0%BF/%D0%BA%D0%B0%D0%BA-%D0%B8-%D1%87%D1%82%D0%BE-%D0%B1%D1%83%D0%B4%D0%B5%D0%BC-%D0%B8%D0%B7%D1%83%D1%87%D0%B0%D1%82%D1%8C/
С Джанго так же работаем сейчас. что бы понимать Джанго и писать осмысленно, рассказал в этом видео.
Два подхода изучения Django 4. Профессиональный и провальный. А какой у вас?
https://www.youtube.com/watch?v=XJZe_dcNQ7c
Выберите сами, каким путем идти.
Сейчас многие делают ошибку стратегическую, что не берут мой опыт. А потом будут нестись. Ведь лучше делать со мной не спеша и все тщательно тестировать и своими делами заниматься и Джанго профессионально изучить. Попробую достучаться у кого есть цель изучить Джанго и понять как работать с документацией, а потом перенести на другие проекты.
Был в школе Сергей Осадчий, он сделал правильно, поэтому и начал писать. Он делал правильно.
https://spb-tut.ru/%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-demo-%D0%B4%D0%BB%D1%8F-%D0%B3%D0%BE%D1%81%D1%82%D0%B5%D0%B9/%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8/%D0%BF%D0%B0%D1%80%D0%B5%D0%BD%D1%8C-%D0%BD%D0%B0%D1%87%D0%B0%D0%BB-%D0%BF%D0%B8%D1%81%D0%B0%D1%82%D1%8C-%D0%BD%D0%B0-%D0%B4%D0%B2%D1%83%D1%85-%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0%D1%85-python-%D0%B8-kotlin-%D0%B7%D0%B0-%D0%BF%D0%BE%D0%BB%D0%B3%D0%BE%D0%B4%D0%B0/
Ну что ж - к делу.
Вcе записи подраздела.
Сейчас вы проходите урок: 14. Зачем использовать namespace в url Django 4?
<< Назад | Далее >>
Все уроки с тегом: получение ссылок с использованием namespace