Изучение индивидуальности структуры или языка трудно. Это искусство использования чего-то, что кто-то создает много лет назад и делает его чудеса. Это означает участие в изучении советов и хитростей структуры, а также серьезных веществ: DOS-DOS, которые вы должны принять рано. После изучения Django в качестве структуры веб-разработки в начале 2020 года у меня была возможность применить его в боковых проектах, а также во время моего первого программного обеспечения стажировки. Написание записи Python Code – это удовольствие, из-за аккумуляторов, включенного в природу языка. Поэтому Джанго, следовательно, очень легко привыкнуть и допускает быстрый прототип.
В этой статье я хотел бы записаться на некоторые из моих мыслей и размышления после использования Django на повседневной основе в течение 3 месяцев прямо. Я сделал ссылки на Официальный учебник Django (Создание избирательного приложения), поскольку идея этой статьи пришла ко мне, когда я работал через этот учебник.
Это удивительное найти. Наменяющее пространство – это то, что я упускаю из виду, как кодер для начинающих. Может казаться проблемным добавлением какого-либо префикса в именования функций/шаблонов и т. Д. Однако получается, что это действительно важно. Поверьте мне, вы не хотите застрять в ситуации, когда ваш код выглядит хорошо, но независимо от того, сколько раз вы нажимаете клавишу F5, или Ctrl + F5 (если вы находитесь в Windows, для жесткого обновления), чтобы обновить, в Интернете Страница просто не отражает ваши последние изменения. Эта проблема, вероятно, приведена в результате пространства намазки. Это происходит, когда у вас есть два разных файла с тем же именем, хотя в разных папках называются произвольно.
Шаблон имен
Вместо того, чтобы установить шаблон HTML в папку «Шаблоны» в каждом приложении Django, у вас должен быть другой подкаталог в папке «Шаблоны» с именем приложения. После этого вы будете ссылаться на шаблон вместе с именем приложения, и это предотвратит неверные ссылки на шаблоны, проживающие в другом приложении. например
# Dont do this polls/templates/whatever.html # Do this polls/templates/polls/whatever.html # Refer to the template like this "polls/whatever.html"
Согласно документации сам
Теперь мы могли бы уехать с помощью наших шаблонов непосредственно в опросах/шаблонах (вместо того, чтобы создать другой подкаталог опросов), но на самом деле это было бы плохое представление. Django выберет первый шаблон, который он находит, чье имя совпадает, и если у вас был шаблон с тем же именем в другом приложении, Django не сможет различать их. Нам нужно иметь возможность указывать Django справа, и лучший способ убедиться, что это намаснет их. То есть, поместив эти шаблоны внутри другого каталога, названного для самого приложения.
Доставка URL-адреса
В той же вене нам нужно обеспечить соблюдение имен по URL. Это позволит избежать столько неприятностей по дороге. С несколькими компонентами в одном проекте Django нам нужно знать, как обратиться к правильному URL. Первое, что нам нужно сделать, это добавить переменную «app_name» в файле URLS.PY в приложении. например
app_name = 'polls' urlpatterns = [ path('',views.index,name='index') ]
С добавлением App_Name ссылка на название пути больше не будет просто именем «индекс» в этом случае. Вместо этого, чтобы обратиться к одному и тому же пути в шаблоне, теперь вы должны использовать «App_name: структура PathName». например
На тему URL, быстрые советы: избегайте жесткозедированных URL в вашем шаблоне HTML. Вам может быть соблазн использовать абсолютный URL в атрибутах «Href», но это будет технологичный долг, который вы должны погасить, когда вы решите изменить URL-адреса верхнего уровня.
Статическое пространство имен
Последние, но не менее важные, статические файлы (изображения/видео, и т. Д.) Лучше всего помещают в правильный подкаталог, как шаблоны. Это довольно важно, особенно потому, что, когда у вас есть nginx, чтобы обслуживать ваши статические файлы в производственной среде, вы должны сначала запускать командную команду Collect-Static, и все статические файлы будут сохранены в той же папке, если вы не сделаете усилия для создания подпапок. Джанго не сможет рассказать им друг от друга.
# Don't do this polls/static/whatever.jpg # Do this polls/static/polls/whaever.jpg
Применение пространства имен на ваш код Django, может показаться незначительными деталями сначала, но это важная практика, которая необходима, чтобы сказать наименее. Сделайте это рано и сделайте это правильно, вы не пожалеете об этом! (Оставайтесь на улице для части 2, где я обсуждаю другие точки обучения:) Кроме того, не стесняйтесь оставлять комментарии ниже, чтобы поделиться моментами, когда вы понимаете, что вы не оцениваете, как новичок, но на самом деле очень важно знать.)
Оригинал: “https://dev.to/tlylt/here-s-what-i-learned-from-examining-the-django-official-tutorial-after-using-the-framework-for-3-months-3peh”