fbpx

Каталог статей

Каталог статей для размещения статей информационного характера

Как выучить

Учебник: Начало работы с веб-фреймворком Django в Visual Studio

Учебник: Начало работы с веб-фреймворком Django в Visual Studio

Django – это высокоуровневый Python фреймворк, предназначенный для быстрой, безопасной и масштабируемой веб-разработки. В этом учебнике рассматривается фреймворк Django в контексте шаблонов проектов. Visual Studio предоставляет шаблоны проектов для упрощения создания веб-приложений на основе Django.

В этом уроке вы узнаете, как:

  • Создать базовый проект Django в репозитории Git с помощью шаблона “Blank Django Web Project” (шаг 1).
  • Создавать приложение Django с одной страницей и рендерить эту страницу с помощью шаблона (шаг 2).
  • Подача статических файлов, добавление страниц и использование наследования шаблонов (шаг 3).
  • Использование шаблона Django Web Project для создания приложения с несколькими страницами и отзывчивым дизайном (шаг 4).
  • Аутентификация пользователей (шаг 5).

Необходимые условия

  • Visual Studio 2017 или более поздняя версия для Windows со следующими опциями:
    • Рабочая нагрузка разработки Python (вкладка Workload в программе установки). Инструкции см. в разделе Установка поддержки Python в Visual Studio.
    • Git для Windows и GitHub Extension для Visual Studio на вкладке Отдельные компоненты в разделе Инструменты кода .
    • Visual Studio 2022 на Windows со следующими опциями:
      • Рабочая нагрузка разработки Python (вкладка Рабочая нагрузка в программе установки). Дополнительные инструкции см. в разделе Установка поддержки Python в Visual Studio.
      • Git для Windows на вкладке Отдельные компоненты в разделе Инструменты кода .

      Шаблоны проектов Django также включают более ранние версии Python Tools for Visual Studio. Детали шаблона могут отличаться от того, что рассматривается в этом руководстве (особенно это касается более ранних версий фреймворка Django).

      Разработка на Python в настоящее время не поддерживается в Visual Studio для Mac. На Mac и Linux используйте расширение Python в Visual Studio Code.

      “Проекты Visual Studio” и “проекты Django”

      В терминологии Django, “проект Django” содержит несколько конфигурационных файлов на уровне сайта, а также одно или несколько “приложений”. Чтобы создать полноценное веб-приложение, вы можете развернуть эти приложения на веб-хосте. Проект Django может содержать несколько приложений, и одно и то же приложение может находиться в нескольких проектах Django.

      Проект Visual Studio может содержать проект Django вместе с несколькими приложениями. Всякий раз, когда в этом руководстве упоминается просто “проект”, имеется в виду проект Visual Studio. Когда в нем говорится о части веб-приложения “проект Django”, то имеется в виду конкретно “проект Django”.

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

      Шаг 1-1: Создание проекта и решения Visual Studio

      При работе с Djan

      In Visual Studio, select File > New > Project , search for “Django”, and select the Blank Django Web Project template. (You can also find the template under Python >Name : установите имя проекта Visual Studio в BasicProject. Это имя также используется для проекта Django.

      Location : укажите местоположение, в котором будет создано решение и проект Visual Studio.

      • Solution : оставьте этот элемент управления установленным по умолчанию Create new solution.
      • Имя решения : установите значение LearningDjango , что подходит для решения как контейнера для нескольких проектов в этом учебнике.
      • Создать каталог для решения : Оставьте установленным (по умолчанию).
      • Создать новый Git-репозиторий : Выберите эту опцию (по умолчанию она неактивна), чтобы Visual Studio создала локальный Git-репозиторий при создании решения. Если вы не видите этой опции, запустите программу установки Visual Studio и добавьте Git for Windows и GitHub Extension for Visual Studio на вкладке Индивидуальные компоненты в разделе Инструменты кода.
      • Через некоторое время Visual Studio выдаст диалоговое окно с сообщением This project requires external packages (показано ниже). Это диалоговое окно появляется потому, что шаблон включает файл requirements.txt, ссылающийся на последний пакет Django 1.x. (Выберите Show required packages, чтобы увидеть точные зависимости).
      • Выберите опцию I will install them myself . Вскоре вы создаете виртуальную среду, чтобы убедиться, что она исключена из контроля исходных текстов. (Вы всегда можете создать среду из файла requirements.txt .)

      Project , найдите “Django” и выберите шаблон Blank Django Web Project , затем выберите Next .

      Введите следующую информацию и выберите Создать :

      In Visual Studio, select File > New > Имя проекта : Задайте имя проекта Visual Studio – BasicProject. Это имя также используется для проекта Django.

      Расположение : Укажите расположение, в котором будут созданы решение и проект Visual Studio.

      • Решение : Оставьте этот элемент управления установленным по умолчанию Create new solution.
      • Имя решения: Установите значение LearningDjango, которое подходит для решения как контейнера для нескольких проектов в этом учебнике.
      • Шаг 1-2: Изучите элементы управления Git и опубликуйте в удаленном репозитории
      • Поскольку вы выбрали опцию Create new Git repository в диалоге New Project, проект уже зафиксирован в локальном контроле исходных текстов по завершении процесса создания. В этом шаге вы познакомитесь с элементами управления Git в Visual Studio и окном Team Explorer, в котором вы работаете с контролем исходного кода.

      Изучите элементы управления Git в нижнем углу главного окна Visual Studio. Слева направо эти элементы управления отображают нефиксированные коммиты, нефиксированные изменения, имя репозитория и текущую ветвь:

      Если вы не выберете опцию Create new Git repository в диалоге New Project, элементы управления Git покажут только команду Add to source control, которая создаёт локальный репозиторий.

      Выберите кнопку changes, и Visual Studio откроет окно Team Explorer на странице Changes. Поскольку вновь созданный проект уже автоматически зафиксирован в системе управления исходным кодом, вы не видите никаких ожидающих изменений.

      В строке состояния Visual Studio выберите кнопку unpushed commits (стрелка вверх с цифрой 2 ), чтобы открыть страницу Synchronization в Team Explorer. Поскольку у вас только локальный репозиторий, страница предоставляет простые опции для публикации репозитория в различные удаленные репозитории.

      Вы можете выбрать любой сервис для своих проектов. В данном руководстве показано использование GitHub, где готовый пример кода для руководства хранится в репозитории Microsoft/python-sample-vs-learning-django.

      При выборе любого из элементов управления Publish Team Explorer запрашивает дополнительную информацию. Например, при публикации образца для этого руководства сначала нужно было создать сам репозиторий, в этом случае использовалась опция Push to Remote Repository с URL репозитория.

      Если у вас нет существующего репозитория, опции Publish to GitHub и Push to Azure DevOps позволят вам создать его прямо из Visual Studio.

      По мере работы с этим учебником выработайте привычку периодически использовать элементы управления в Visual Studio для фиксации и отправки изменений. Этот учебник напомнит вам об этом в нужных местах.

      Для быстрой навигации в Team Explorer выберите заголовок (на изображениях выше – Changes или Push), чтобы увидеть всплывающее меню доступных страниц.

      В этом шаге вы познакомитесь с элементами управления Git в Visual Studio и Team Explorer. С помощью окна Team Explorer вы будете работать с контролем исходного кода.

      Чтобы зафиксировать проект в локальном контроле исходных текстов:

      Выберите команду Add to Source Control в нижнем углу главного окна Visual Studio.

      Затем выберите опцию Git.

      1. Теперь вы попадаете в окно Create Git repository, где вы можете создать и вытолкнуть новый репозиторий.
      2. После создания репозитория внизу появляется набор новых элементов управления Git. Слева направо эти элементы управления отображают невыдвинутые коммиты, незафиксированные изменения, текущую ветку и имя хранилища.
      3. Выберите кнопку Git changes. Visual Studio откроет страницу Git Changes в Team Explorer. Вы не видите никаких ожидающих изменений, так как вновь созданный проект уже автоматически зафиксирован в системе управления исходным кодом.

      В строке состояния Visual Studio выберите кнопку unpushed commits (стрелка вверх с цифрой 2 ), чтобы открыть страницу Synchronization в Team Explorer. Страница Synchronization предоставляет простые опции для публикации локального репозитория в различные удаленные репозитории.

      Вы можете выбрать любой сервис для своих проектов. В данном руководстве показано использование GitHub, где готовый пример кода для руководства хранится в репозитории Microsoft/python-sample-vs-learning-django.

      При выборе любого из элементов управления Publish, Team Explorer запрашивает дополнительную информацию. Например, при публикации образца для этого учебника сначала необходимо создать сам репозиторий, в этом случае использовалась опция Push to Remote Repository с URL репозитория.

      Если у вас нет существующего репозитория, опции Publish to GitHub и Push to Azure DevOps позволят вам создать его прямо из Visual Studio.

      По мере работы с этим учебником выработайте привычку периодически использовать элементы управления в Visual Studio для фиксации и отправки изменений. Этот учебник напомнит вам об этом в нужных местах.

      Для быстрой навигации в Team Explorer выберите заголовок (на изображениях выше – Changes или Push), чтобы увидеть всплывающее меню доступных страниц.

      В этом шаге вы познакомитесь с элементами управления Git в Visual Studio и Team Explorer. С помощью окна Team Explorer вы будете работать с контролем исходного кода.

      Чтобы зафиксировать проект в локальном контроле исходных текстов:

      Наконец, контроль исходных текстов, который по своей сути является формой автоматизации, позволяет автоматизировать сборки, тестирование и управление релизами. Это первый шаг в использовании DevOps для проекта. На самом деле нет причин не использовать контроль исходных текстов с самого начала, так как барьеры для входа низкие.

      Для дальнейшего обсуждения контроля исходных текстов как средства автоматизации см. статью “Источник истины: роль репозиториев в DevOps” в MSDN Magazine, написанную для мобильных приложений, но применимую и к веб-приложениям.

      Вопрос: Могу ли я запретить Visual Studio автокоммитировать новый проект?

      Глобальные настройки, снимите флажок Commit changes after merge by default, а затем выберите Update.

      Шаг 1-3: Создание виртуальной среды и исключение ее из контроля исходного кода

      Answer: Yes. To disable autocommit, go to the Settings page in Team Explorer . Select Git >Теперь, когда вы настроили контроль исходных текстов для вашего проекта, вы можете создать виртуальную среду, содержащую необходимые пакеты Django для проекта. Затем вы можете использовать Team Explorer, чтобы исключить папку среды из контроля исходного кода.

      В Solution Explorer щелкните правой кнопкой мыши узел Python Environments и выберите Add Virtual Environment.

      Появится диалоговое окно Add Virtual Environment с сообщением We found a requirements.txt file. Это сообщение указывает на то, что Visual Studio использует этот файл для настройки виртуальной среды.

      Выберите Создать, чтобы принять значения по умолчанию. (При желании вы можете изменить имя виртуальной среды, что просто изменит имя ее подпапки, но env является стандартным соглашением).

      Согласитесь на привилегии администратора, если появится запрос, затем наберитесь терпения на несколько минут, пока Visual Studio загружает и устанавливает пакеты, что для Django означает расшаривание нескольких тысяч файлов в примерно таком же количестве подпапок! Вы можете видеть прогресс в окне Visual Studio Output. Пока вы ждете, поразмышляйте над следующими разделами вопросов.

      В элементах управления Visual Studio Git (в строке состояния) выберите индикатор изменений (который показывает 99* ), который открывает страницу Changes в Team Explorer.

      Создание виртуальной среды принесло тысячи изменений, но вам не нужно включать ни одно из них в контроль исходного кода, потому что вы (или любой другой клонирующий проект) всегда можете воссоздать среду из файла requirements.txt .

      Чтобы исключить виртуальную среду, щелкните правой кнопкой мыши папку env и выберите Ignore these local items .

      После исключения виртуальной среды останутся только изменения в файле проекта и .gitignore. Файл .gitignore содержит добавленную запись для virtu

      Согласитесь на привилегии администратора, если появится запрос, затем подождите несколько минут, пока Visual Studio загрузит и установит пакеты. За это время тысячи файлов будут перенесены во многие подпапки. Вы можете видеть прогресс в окне Visual Studio Output. Пока вы ждёте, поразмышляйте над следующими разделами Вопросов.

      В элементах управления Visual Studio Git (в строке состояния) выберите индикатор изменений (который показывает 99* ), который открывает страницу Changes в Team Explorer.

      Создание виртуальной среды принесло тысячи изменений, но вам не нужно включать ни одно из них в контроль исходного кода, потому что вы (или любой другой клонирующий проект) всегда можете воссоздать среду из файла requirements.txt .

      Чтобы исключить виртуальную среду, щелкните правой кнопкой мыши папку env и выберите Ignore these local items .

      После исключения виртуальной среды останутся только изменения в файле проекта и файле .gitignore. Файл .gitignore содержит добавленную запись для папки виртуальной среды. Вы можете дважды щелкнуть по файлу, чтобы увидеть разницу.

      Введите сообщение о фиксации и выберите кнопку Commit All, затем перенесите фиксации в удаленный репозиторий.

      Чтобы исключить виртуальную среду, щелкните правой кнопкой мыши папку env и выберите Ignore these local items .

      Ответ: Виртуальная среда – это отличный способ изолировать точные зависимости вашего приложения. Такая изоляция позволяет избежать конфликтов в глобальной среде Python, а также облегчает тестирование и совместную работу. Со временем, по мере разработки приложения, вы неизбежно добавляете множество полезных пакетов Python. Вы можете легко обновлять файл requirements.txt проекта, храня пакеты в виртуальной среде проекта. Файл requirements.txt описывает среду, которая включается в систему управления исходными текстами. Когда проект копируется на любые другие компьютеры, включая серверы сборки, серверы развертывания и другие компьютеры разработчиков, легко воссоздать среду, используя только файл requirements.txt (именно поэтому среду не нужно включать в контроль исходного кода). Дополнительные сведения см. в разделе Использование виртуальных сред.

      Согласитесь на привилегии администратора, если появится запрос, затем подождите несколько минут, пока Visual Studio загрузит и установит пакеты. За это время тысячи файлов будут перенесены во многие подпапки. Вы можете видеть прогресс в окне Visual Studio Output. Пока вы ждёте, поразмышляйте над следующими разделами Вопросов.

      Файл Вы также можете открыть файл из Team Explorer . Перейдите на страницу Settings и выберите Repository Settings . Теперь перейдите в раздел Ignore & Attributes Files и выберите ссылку Edit рядом с .gitignore ).

      Создание виртуальной среды принесло тысячи изменений, но вам не нужно включать ни одно из них в контроль исходного кода, потому что вы (или любой другой клонирующий проект) всегда можете воссоздать среду из файла requirements.txt .

      Шаг 1-4: Изучите шаблонный код

      После завершения создания проекта изучите шаблонный код проекта Django (он снова такой же, как и сгенерированный командой CLI django-admin startproject ).

      В корне вашего проекта находится manage.py, утилита администрирования командной строки Django, которую Visual Studio автоматически устанавливает в качестве стартового файла проекта.

      Answer: First, edit your .gitignore file to exclude the folder. Find the section at the end with the comment # Python Tools for Visual Studio (PTVS) and add a new line for the virtual environment folder, such as /BasicProject/env . (Visual Studio doesn’t show the file in Solution Explorer . To open the file directly, go to File > Open >__init.py : Пустой файл, который сообщает Python, что эта папка является пакетом Python.

      settings.py : Содержит настройки для проекта Django, которые вы будете изменять в процессе разработки веб-приложения.

      urls.py : Содержит оглавление для проекта Django, которое вы также будете изменять в процессе разработки.

      wsgi.py : Точка входа для WSGI-совместимых веб-серверов для обслуживания вашего проекта. Обычно вы оставляете этот файл как есть, так как он предоставляет крючки для производственных веб-серверов.

      Как отмечалось ранее, шаблон Visual Studio также добавляет файл requirements.txt в ваш проект, указывая зависимость от пакета Django. Наличие этого файла является тем, что приглашает вас создать виртуальную среду при первом создании проекта.

      Вопрос: Может ли Visual Studio генерировать файл requirements.txt из виртуальной среды после установки других пакетов?

      • Ответ: Да. Разверните узел Python Environments, щелкните правой кнопкой мыши на вашей виртуальной среде и выберите команду Generate requirements.txt. Полезно периодически использовать эту команду по мере изменения среды и фиксировать изменения в файле requirements.txt в системе контроля исходных текстов вместе с другими изменениями кода, зависящими от этой среды. Если вы настроили непрерывную интеграцию на сервере сборки, вам следует генерировать файл и фиксировать изменения каждый раз, когда вы изменяете среду.
      • Шаг 1-5: Запустите пустой проект Django
      • Запустите отладку ( F5 ) или используйте кнопку Web Server на панели инструментов (браузер, который вы видите, может отличаться):
      • Запуск сервера означает выполнение команды manage.py runserver , которая запускает встроенный сервер разработки Django. Если Visual Studio говорит Failed to start debugger с сообщением об отсутствии файла запуска, щелкните правой кнопкой мыши manage.py в Solution Explorer и выберите Set as Startup File .

      При запуске сервера открывается консольное окно, в котором также отображается журнал сервера. Visual Studio автоматически открывает браузер по адресу http://localhost: . Поскольку проект Django не имеет приложений, Django показывает только страницу по умолчанию, чтобы подтвердить, что то, что у вас есть до сих пор, работает нормально.

      Команда Stop Debugging в Visual Studio.

      Вопрос: Является ли Django веб-сервером и фреймворком?

      Ответ: И да, и нет. Django имеет встроенный веб-сервер, который используется в целях разработки. Этот веб-сервер используется, когда вы запускаете веб-приложение локально, например, при отладке в Visual Studio. Однако, когда вы развертываете приложение на веб-хосте, Django использует веб-сервер хоста. Модуль wsgi.py в проекте Django позаботится о подключении к производственным серверам.

      In Visual Studio, select Debug >Вопрос: В чем разница между командами меню Debug и командами сервера в подменю Python проекта?

      Присоединение к команде Process.

      Следующие шаги

      When you’re done, stop the server by closing the console window, or by using the Debug >На данном этапе базовый проект Django не содержит никаких приложений. Вы создадите приложение в следующем шаге. Поскольку вы будете работать с приложениями Django больше, чем с проектом Django, вам пока не нужно знать больше о файлах boilerplate.

      Диалог нового проекта в Visual Studio для пустого веб-проекта Django

      Подсказка о том, что для проекта требуются внешние пакеты

      Новый диалог проекта в Visual Studio для пустого веб-проекта Django.

      Answer: In addition to the Debug menu commands and toolbar buttons, you can also launch the server using the Python > Run server or Python > Run debug server commands on the project’s context menu. Both commands open a console window in which you’ll see the local URL (localhost:port) for the running server. However, you must manually open a browser with that URL, and running the debug server doesn’t automatically start the Visual Studio debugger. If you want, you can attach a debugger to the running process by using the Debug >Элементы управления Git в окне Visual Studio

      Окно Team Explorer на странице изменений

      Окно Team Explorer, показывающее доступные опции Git-репозитория для контроля исходных текстов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *