- Создаем своё первое веб-приложение с помощью Django
- Создаем своё первое веб-приложение с помощью Django
- Устанавливаем Django
- Создаем проект
- Создаем приложение
- Установка базы данных
- Главная страница
- Добавим немного стилей
- Часть 1. Python/Django и Hello World. Запуск тестового сайта на Python/Django под OS Windows.
- О чем будет статья?
- Установка Python и PIP на Windows
- Установка Django в виртуальной среде Windows
- Установка Django на Windows
- Шаг 1. Установка Python
- Шаг 2. Установка Pip
- Шаг 3. Создание виртуального окружения
- Шаг 4. Установка Django в виртуальное окружение через pip
Создаем своё первое веб-приложение с помощью Django
Создаем своё первое веб-приложение с помощью Django
Django — это Open Source фреймворк для создания веб-приложений различной сложности. Одним из основных преимуществ Django является то, что вам нужно позаботиться только о логике вашего будущего приложения, остальное сделает Django.
Мы создадим веб-приложение, у которого будет панель администратора и возможность загружать загадки, а у пользователей, соответственно, возможность отвечать на них. Во время разработки будут использоваться Python 3.4.3 и Django 1.9.1.
Устанавливаем Django
Делается это очень просто, в командной строке нужно написать: pip install Django==1.9.1 .
Создаем проект
Если вы правильно установили Django, то после запуска django-admin —version вы увидите текущую версию фреймворка. Теперь создадим проект. Это можно сделать следующим образом: django-admin startproject django_example .
Как только создание проекта будет завершено, взглянем на директорию нашего проекта:
- django_example/__init__.py — пустой файл, который говорит Python, что данная директория должна восприниматься в качестве пакета.
- django_example/settings.py содержит конфигурацию нашего проекта.
- django_example/urls.py — здесь объявляются URL.
- django_example/wsgi.py — с помощью него приложение может работать с веб-сервером по протоколу WSGI.
- manage.py позволяет взаимодействовать с проектом.
Теперь пришло время запустить наше приложение. Для этого в командной строке нужно написать python manage.py runserver . После этого в адресной строке браузера нужно написать: http://127.0.0.1:8000/ . Если вы увидели «You have unapplied migrations; your app may not work properly until they are applied.», то не волнуйтесь, мы вернемся к этому чуть позже.
Создаем приложение
Определим различие между проектом и приложением. Приложение — это программа, которая что-то делает, а проект — это группа приложений.
22–25 апреля, Онлайн, Беcплатно
Итак, приступим к созданию приложения. Это делается следующим образом: python manage.py startapp riddles .
Как только приложение создано, давайте напишем простой вид, по правилам Django все виды должны храниться в файле views.py .
Теперь, чтобы привязать наш вид к URL, создадим файл urls.py .
В urls.py мы должны написать следующее:
Теперь, если мы запустим наше приложение http://127.0.0.1:8000/riddles/ , мы увидим «Hello, World!».
Установка базы данных
По умолчанию в Django используется SQLite, если она вас не устраивает, то вы можете ознакомиться с нашей статьей, в которой мы рассказываем, как безболезненно перейти с SQLite на MySQL.
Теперь откроем django_example/settings.py и взглянем на переменную INSTALLED_APPS , она хранит все приложения, которые активны в текущем проекте. По умолчанию она содержит:
- django.contrib.admin — админка, скоро мы ей воспользуемся.
- django.contrib.auth — система аутентификации.
- django.contrib.contenttypes — фреймворк для content types.
- django.contrib.sessions — сессионный фреймворк.
- django.contrib.messages — фреймворк для отправки сообщений.
- django.contrib.staticfiles — фреймворк для работы со статичными файлами.
Некоторые из этих приложений используют базы данных, но они еще не установлены, поэтому мы и видели «You have unapplied migrations; your app may not work properly until they are applied.». Поправить это можно следующим образом: python manage.py migrate . Вы должны увидеть следующее:
Теперь создадим нашу модель. Для начала создадим Riddle и Option . В Riddle будет содержаться загадка, в Option — один из возможных ответов на нее.
Данная модель обеспечивает Django информацией, необходимой для создания схемы базы данных и database-access API для доступа к объектам. Теперь нам нужно привязать наше приложение к нашему проекту, делается это следующим образом:
После этого нужно сделать миграцию: python manage.py makemigrations riddles . Вы должны увидеть следующее:
Так мы говорим Django, что в моделях были сделаны некоторые изменения, и их нужно сохранить в качестве миграции.
Проверить, что сделает миграция, можно так: python manage.py sqlmigrate riddles 0001 (0001 — версия миграции, которую мы хотим проверить). На выходе мы получим:
Заметьте, что команда sqlmigrate нужна только для проверки, каждый раз ее запускать необязательно.
Теперь мы можем начать пользоваться панелью администратора. Но для этого нам нужен пользователь. Создать его можно следующим образом: python manage.py createsuperuser . После этого запускаем сервер, если он не запущен, и переходим на http://127.0.0.1:8000/admin/ . Вы увидите следующее:
Теперь дадим админу возможность изменять наши модели. Делается это так:
Вот что получится в итоге:
Возьмите небольшую паузу и поиграйтесь с панелью администратора. Вы будете приятно удивлены тем, что умеет Django.
Главная страница
Что нам нужно для создания главной страницы?
- Templates: скелет нашей страницы.
- Views: функция на Python для отображения контента.
Начнем с шаблонов. Создадим папку templates внутри папки riddle , а в ней создадим index.html .
Теперь создадим макет для ответов:
Здесь мы используем csrf_token , он нужен для защиты от межсайтовой подделки запроса, каждая внутренняя форма должна его использовать. Теперь напишем виды для рендеринга наших шаблонов:
Давайте пройдемся по каждой функции отдельно:
- index: Index использует функцию render . На вход она получает HttpRequest, местонахождение шаблона и его содержимое, а возвращает HttpResponse с окончательным html.
- detail: Detail делает практически то же самое, но только функция get_object_or_404 возвращает HttpResponse404, если нужный объект не был найден.
- answer: Answer ищет предоставленную загадку (и возвращает 404, если она не найдена) и проверяет правильность ответа.
Теперь добавим наши функции в urls.py :
Добавим немного стилей
Для начала создадим директорию static , а в ней создадим файл main.css .
Немного изменим наши шаблоны:
Первая строка загружает статические файлы, потом мы используем <% static '#' %>, где # — путь к вашему файлу. Аналогичная процедура проводится и для JavaScript.
Теперь вы можете создавать свои собственные приложения на Django. В качестве подсказки на старте работы с фреймворком воспользуйтесь одной из наших шпаргалок по Python.
Исходный код нашего приложения можно скачать по этой ссылке.
Если этот проект показался сложным, попробуйте пройти двухчасовой видеокурс. На нём вы пошагово создадите 3 веб-приложения: сокращатель ссылок, ToDo List и словарь английских слов.
Часть 1. Python/Django и Hello World. Запуск тестового сайта на Python/Django под OS Windows.
👁 1 237 просмотров
Django — это MVC/MTV — фреймворк, написанный на языке Python, а Python — высокоуровневый язык для всех повседневных задач на любой платформе и имеет интерпретаторы для всех известных ОС, есть даже реализация для запуска поверх Java — машины, которая именуется , как Jython.
О чем будет статья?
В статье затронем моменты установки интерпретатора Python 3.x и Django на Windows, в целях запуска тестового сайта на Python на ОС Windows. Обычно, при разработке проекта приходиться писать код на десктопе, чем и служит для нас Windows, а конечный вариант грузить на сервер, где правит только командная строка Linux — системы.
Установка Python и PIP на Windows
Для установки переходим на официальный сайт разработчика. Наводим курсором на раздел «Downloads» и видим всплывающее табло
На момент написания данной статьи поддерживаются 2 версии языка — 2.x и 3.x. Так как на версии 2.x написано очень много проектов и версии языка отличаются друг от друга кардинально, то поддерживаются обе версии, но в новых проектах предпочтительнее использовать последнюю версию языка — 3.x. Загружаем и кликаем для установки. Установка Python 3.x идет стандартным образом
На начальном этапе установки необходимо указать, что мы хотим добавить нашу программу в переменную среду Windows, чтобы выполнять команды Python через командную строку. Если данный пункт отсутствует на интсалляторе, то придется добавить вручную через панель настроек Windows, прописав через «;» путь установки Python для переменной PATH. Инсталлятор предлагает по умолчанию установить Python в папку пользователя системы. Нажмем пользовательский режим, оставляем все, как есть и принимаем во внимание, что pip устанавливается в процессе инсталляции Python и если в инсталляторе его нет, придется установить после установки Python.
pip — это один из инструментов Python, который предназначен для загрузки и установки дополнительных пакетов Python. В дальнейщем он нам нужен будет для загрузки и запуска Django
Жмем «Next» и меняем место установки. Можно установить в любое удобное место — все на вкус и удобство пользователя. Жмем «Install» и заканчиваем установку.
Если в командной строке выскакивает сообщение, что есть более новая версия pip и, вместе с инсталлятором установилась старая версия, то проблему решит апгрейд pip через команду:
Если pip не установлен при инсталляции, то давайте разберем другой способ установки pip. Другой способ установки инструмента pip — скачиваем этот инструмент get-pip.py с официального сайта и запускаем этот файл через командную строку
После установки надо добавить переменную C:\PythonServer\Lib\site-packages\django\bin в PATH к уже имеющимся переменным Python, которые были добавлены автоматически инсталлятором
Установка Django в виртуальной среде Windows
После того, как Python и pip установлены и настроены переменные среды, необходимо установить пакеты Django. Есть несколько способов установки Django. В данной статье будем пользоваться рекомендованным методом установки официального релиза Django.
Ниже показан рекомендованный метод установки Django от разработчиков этого фреймворка:
- Установка через pip. Так как pip был установлен через автономный инсталлятор, то необходимо проверить на то, что он имеет последнюю, актуальную версию, иначе это может быть причиной сбоя установки.
- Использование virtualenv и virtualenvwrapper. Эти инструменты предоставляют изолированные среды Python, которые являются более практичными, чем устанавливаемые пакеты в системе. Они , также, позволяют устанавливать пакеты без привилегий администратора. Здесь дополнительная информация по созданию и использованию virtualenv на Python 3.
- После создания и активации виртуальной среды, нужно установить Django через команду
Теперь необходимо выполнить каждый из вышеизложенных шагов последовательно.
- Так как pip был у нас установлен в процессе инсталляции, то пропускаем этот шаг.
- Устанавливаем виртуальную среду через установщик pip при помощи последовательности команд:
и проверяем версию установленного virtualenv:
Итак, в предыдущем шаге мы установили инструмент для создания виртуальных сред Python. Настал момент создания виртуальной среды. Виртуальную среду можно создать в любом месте. Для нашего примера создадим в корневой папке Python C:\PythonServer\ новую папку Environments, в которой будут создаваться наши новые среды. Теперь в этой папке создадим новую виртуальную среду под названием «sites» и для этого, через командную строку заходим в папку C:\PythonServer\Environments и выполняем команду:
И после того, когда виртуальная среда создана, через командную строку заходим в папку созданной виртуальной среды:
и активируем эту среду при помощи команды:
и выполняем команду:
которая вернет версию скрипта
Для деактивации текущей среды или выхода из текущей среды необходимо, из папки текущей среды, выполнить команду:
После того, как создали виртуальную среду и активировали нам необходимо установить в эту виртуальную среду фреймворк Django:
Далее заходим в папку нашей среды и устанавливаем через .\Scripts\django-admin.py исходники нашего проекта через команду:
или то же самое можно сделать через команду, которая работает через виртуальную среду:
где mathzilla — это название моего проекта. После выполнения этой команды в корневой папке нашей среды sites будет создана новая папка mathzilla с исходниками нашего начального проекта и осталось его запустить.
В Django, внутри проекта может содержаться приложения и по сути дела, любой проект Django — это сборка мелких отдельных приложений, которые, как кирпичики служат для всей работоспособной системы. Для создания приложения внутри проекта необходимо зайти внутрь папки проекта и запустить команду:
или, то же самое можно сделать командой:
Для запуска проекта переходим в папку нашего проекта выполняем команду запуска сервера при помощи файла manage.py:
и пойдет процесс запуска сервера с указанием локальной ссылки и порта, по которому у нас доступен наш тестовый сайт на Django. В моем случае сервер запустился по ссылке:
На этом установка Python и тестового сервера с Django завершена.
Установка Django на Windows
Перед тем как начать изучение фреймворка Django для разработки веб-приложений на языке программирования Python, нам необходимо его установить. Для помощи в установке Django на Windows мы подготовили для вас пошаговую инструкцию.
Шаг 1. Установка Python
Перед установкой Django, вам необходимо установить на ваш компьютер Python. О том как это сделать по ОС Windows мы уже писали ранее статью: УСТАНОВКА PYTHON 3 НА WINDOWS. Проследуйте инструкциям указанным в данной статье и возвращайтесь сюда, для установки Django.
Шаг 2. Установка Pip
Pip необходим для удобной установки пакетов, написанных на Python. Он нам понадобится для установки Django. Начиная с версии Python 3.4 установка Pip происходит автоматически. Но лучше убедиться, что Pip установлен, и если обнаружится, что нет, то установить его.
Для начала запустим командную строку Windows. Для этого нажмите Win+R и введите cmd.
В командной строке введем:
Если после выполнения данной операции вы увидите сообщение о версии pip, то всё нормально — можете переходить к следующему шагу.
Если вместо сообщения о версии (картинка сверху) вы увидели сообщение об ошибке, то вам необходимо установить pip.
- Скачайте get-pip.py. Если ваш браузер сразу открывает код, то на странице нажмите правую кнопку мыши и выберете «Сохранить как…»
- Запустите скачанный файл с правами Администратора или через командную строку. Для установки pip через командную строку, перейдите в ней в папку с скаченным get-pip.py и выполните команду:
- Снова выполните проверку версии pip.
Шаг 3. Создание виртуального окружения
Виртуальное окружение (virtualenv) необходимо, чтобы изолировать фреймворк Django для каждого проекта. Это предотвратит возможное изменения в одном проекте при редактировании другого, а также позволит использовать разные версии Django для разных проектов.
Мы рекомендуем выполнять данный шаг, хотя его можно и пропустить. Но лучше уже при обучении всё делать правильно и «по уму».
Для установки виртуального окружения выполним несколько шагов:
- Откройте командную строку и перейдите в директорию, где хотите создать проект.
Здесь мы создали директорию djangoset1 и осуществили переход в неё.
Создадим виртуальное окружение с именем venvset1 (имя можно выбрать любое):
При выполнении этой команды, создается новая директория с необходимыми файлами.
Запустим виртуальное окружение virtualenv, выполнив команду в командной строке Windows:
Если вы увидели строку, как на картинке выше, то всё у вас получилось.
Шаг 4. Установка Django в виртуальное окружение через pip
Подготовительные работы завершены. Теперь установим Django в созданное виртуальное окружение virtualenv через pip. Выполним в командной строке команду:
Если установка прошла успешно, вы увидите следующее:
На этом всё, теперь можно начинать изучать Django и написать своё первое приложение.