Django — PythonDjango проект .pyc и .pyo файлы

Содержание

Django — Python/Django проект .pyc и .pyo файлы

Для проектов Django определим какой-нибудь каталог на жестком диске. Например, пусть это будет каталог C:\django . Перейдем в консоли к этому каталогу с помощью команды cd.

При установке Django в папке виртуальной среды устанавливается скрипт django-admin.py . А на Windows также исполняемый файл django-admin.exe . Их можно найти в папке виртуальной среды, в которую производилась установка Django: на Windows — в подкаталоге Scripts , а на Linux/MacOS — в каталоге bin .

django-admin предоставляет ряд команд для управления проектом Django. В частности, для создания проекта применяется команда startproject . Этой команде в качестве аргумента передается название проекта.

Итак, вначале активируем ранее созданную виртуальную среду (например, среду hello, которая была создана в прошлой теме, если она ранее не была активирована) и затем выполним следующую команду:

В данном случае мы создаем проект hello. Имя проекта необязательно должно совпадать с именем виртуальной среды.

После выполнения этой команды в текущей папке будет создан подкаталог hello .

Проект будет состоять из следующих элементов:

manage.py : выполняет различные команды проекта, например, запускает приложение

__init__.py : данный файл указывает, что папка, в которой он находится, будет рассматриваться как модуль. Это стандартный файл для Python.

settings.py : содержит настройки конфигурации проекта

urls.py : содержит шаблоны URL-адресов, по сути определяет систему маршрутизации проекта

wsgi.py : содержит свойства конфигурации WSGI (Web Server Gateway Inerface). Он используется при развертывании проекта.

Запустим проект на выполнение. Для этого с помощью команды cd перейдем в консоли к папке проекта. И затем для запуска проекта выполним следующую команду:

Как сконфигурировать PyCharm указав, что текущий проект — проект Django?

Подключил в PyCharm 2020.2.4 django-проект через FTP. В среде данный проект отображается просто как проект на pure-python. Как сделать так, чтобы PyCharm воспринимала данный проект именно как django-проект?
Дополнение. Виртуальная среда настроена и все необходимые зависимости подтянуты. Открывая папку, которая является корнем виртуальной среды (речь идёт об ОС windows), либо открывая папку с самим проектом — нужного эффекта не даёт. В разделе настроек интерпретатора в pycharm указана именно используемая виртуальная среда. Насколько я понимаю — необходимо «обработать напильником» настройку «Run\Debug Configurations». Хотя могу ошибаться.

2 ответа 2

В настройках есть нужная вкладка settings -> Languages & Frameworks -> Django там и нужно активировать поддержку django. Можете просто в поиске в настройках набрать «django» и найдёте все нужные. Вот как у меня в англоязычном интерфейсе

Привет =)!
Всегда, когда работают с джанго проектами, создают виртуальное окружение. В которое устанавливаются сам джанго, его зависимости ну и нужные человеку библиотеки. И вот для обработки джанго, и всех этих библиотек отвечает питоновский интерпретатор, который нужно обязательно указывать в настройках pyCharm

Официальная документации расскажет много интересного =)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками python django pycharm или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2020 Stack Exchange Inc; пользовательское содержимое попадает под действие лицензии cc by-sa 4.0 с указанием ссылки на источник. rev 2020.11.13.35429

Создание сайта на Python/Django: установка Django и создание проекта

Published 11.10.2020 · Updated 08.08.2020

В прошлой публикации на тему Создание сайта на Python-Django: руководство к старту разработки я начал с того, почему данная связка технологий является удачной и перспективной в применении, а так же описал 3 простых шага для подготовки к старту изготовления сайта с использованием языка программирования Python и веб-фреймворка Django. Теперь, когда мы готовы к старту разработки сайта переходим к первым шагам на пути запуска своего первого сайта на Python/Django. Для это запускаем установленную ранее IDE PyCharm Community Edition и приступаем к созданию сайта. Существует и платная профессиональная версия данной IDE с расширенными возможностями по автоматизации процессов разработки, но для новичков вполне достаточно и бесплатного варианта. Выполнение ряда функций вручную поможет лучше понять процессы, происходящие при разработке сайта на Python.

Установка и настройка среды разработки Python/Django

На этом этапе мы видим перед собой приветственное окно приложения с предложением создать новый проект, открыть существующий или же импортировать из системы контроля версий. Нас же пока интересует первый пункт – Create New Project. Нажимаем его и переходим в созданию нового проекта.

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

Вторая строчка Interpreter отвечает за выбор установленного в системе интерпретатора языка Python. Их может быть несколько, но пока мы не будем вдаваться в нюансы. Сразу отмечу, что для каждого проекта лучше создавать отдельную виртуальную среду (VirtualEnv), которая будет содержать установленные модули, необходимые для конкретного проекта и их настройки и версии не будут влиять на другие проекты. Давайте создадим новую VirtualEnv нажав на шестеренке справа и выбрав пункт Create VirtualEnv.

Для VirtualEnv так же необходимо задать имя, выбрать расположение в файловой системе и версию интерпретатора Python, которая будет использоваться. Я предпочитаю виртуальной среде давать имена аналогичные проекту, чтобы так же легко можно было разобраться для какого проекта она была создана.

Нажимаем ОК и ждем пока закончится процесс создания виртуальной среды. После нажимаем на кнопку Create внизу справа и запускаем процесс создания проекта.

Далее откроется окошко среды разработки, которое сигнализирует о том, что проект создан и теперь мы может переходить к разработке сайта на Django.

Для дальнейших манипуляций открываем Терминал, нажав на кнопку внизу слева.

Установка Django

В командной строке терминала мы будем задавать команды для установки самого фреймворка Django и дальнейшей его настройки. Для этого вводим следующую команду.

Данная команда установит все необходимые компоненты для обеспечения работоспособности Django и возможности его использования в проекте. В завершении мы должны увидеть что-то подобное и последнюю строчку со словами Successfully installed… означающие успешную установку.

Теперь web-framework Django можно использовать в проекте и мы переходим к процессу создания первого Django приложения.

Создаем проект на Django

На этом этапе мы выполним команду, которая создаст проект на Django внутри нашего проекта на Python.

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

Для удобства работы с проектом, на этом этапе рекомендую переместить содержимое второй папки mysite в первую, а файл manage.py в корень проекта. Это облегчит работу с проектом и не будет требовать от нас входить каждый раз когда открываем терминал внутрь первого каталога mysite. В результате структра проекта должна быть примерно следующей:

Цукерберг рекомендует:  Принудительное обновление фавикон

Фактически, в данный момент проект может быть запущен на сервере разработки и он будет работать. Для этого можно запустить команду из терминала

Правда наш сайт ничего пока не содержит и будет выдавать вот такую информацию.

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

А пока все! До новых встреч и удачи в создании сайта на Django!

Твой первый проект на Django!

Отдельные части этой главы основаны на учебном пособии django-marcador , лицензированном под Creative Commons Attribution-ShareAlike 4.0 International License. Руководство django-marcador защищено авторским правом Markus Zapke-Gründemann et al.

Мы собираемся создать простой блог!

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

Названия этих каталогов и файлов очень важны для Django. Ты не должна переименовывать их. Перемещать их в другое место тоже не самая удачная идея. Django необходима определенная структура, чтобы иметь возможность найти важные вещи.

Не забудь: ты должна запускать все команды в virtualenv. Если ты не видишь в командной строке префикса (myvenv) , то необходимо активировать virtualenv. Мы объясняли, как это сделать, в разделе Работаем с virtualenv главы Установка Django. Для этого нужно набрать myvenv\Scripts\activate в Windows или source myvenv/bin/activate в Mac OS / Linux.

В консоли Mac OS или Linux нужно запустить следующую команду (не забудь добавить точку . в конце):

Точка . крайне важна, потому что говорит скрипту установить Django в вашем текущем каталоге (который и обозначается сокращённо точкой . )

Примечание: при вводе приведённой командs помни, что тебе нужно набирать только часть, начинающуюся с django-admin . (myvenv)

/djangogirls$ — это просто пример строки-приглашения терминала.

В Windows запусти следующую команду (не забудь добавить точку . в конце):

Точка . крайне важна, потому что говорит скрипту установить Django в вашем текущем каталоге (который и обозначается сокращённо точкой . )

Примечание: при вводе приведённой команды помни, что тебе нужно набирать только часть, начинающуюся с django-admin.exe . (myvenv) C:\Users\Name\djangogirls> — это просто пример приглашения командной строки.

django-admin.py — это скрипт, который создаст необходимую структуру директорий и файлы для нас. Теперь у твоего проекта должна быть следующая структура:

Примечание: в своей структуре директорий ты также увидишь ранее созданную нами директорию с виртуальным окружением.

manage.py — это другой скрипт, который помогает с управлением сайтом. С помощью него мы, помимо прочего, сможем запустить веб-сервер на твоем компьютере без установки дополнительных программ.

Файл settings.py содержит настройки для твоего веб-сайта.

Помнишь нашу аналогию с почтальоном? Файл urls.py содержит список шаблонов, по которым ориентируется urlresolver .

Давай пока забудем про остальные файлы — мы не будем их изменять. Только не удали их случайно!

Изменяем настройки

Давай внесём изменения в mysite/settings.py . Открой файл в текстовом редакторе, который ты выбрала ранее.

Примечание: помни, что settings.py — самый обычный файл. Ты можешь открыть его из своего редактора кода, используя меню «Файл -> Открыть». При этом ты увидишь обычное окно, в которой ты можешь перейти к своему файлу settings.py и выбрать его. Либо ты можешь открыть этот файл, перейдя в директорию проекта djangogirls на твоём рабочем столе и щёлкнув по нему правой кнопкой мыши; затем выбери свой редактор кода из предложенного списка. Важно выбрать именно редактор, поскольку у тебя могут быть установлены программы, которые откроют наш файл, но не позволят его изменить.

Было бы неплохо установить корректный часовой пояс на нашем сайте. Перейди к списку часовых поясов википедии и скопируй название своего часового пояса (TZ) (например, Europe/Moscow ).

В файле settings.py найди строку, содержащую TIME_ZONE , и измени её в соответствии со своим часовым поясом:

Код языка состоит из сокращённого названия языка, например en для английского или ru для русского, и кода страны, например, ru для России или ch для Швейцарии. Тебе понадобится эта настройка, если ты хочешь, чтобы все встроенные кнопки и уведомления от Django были на твоём языке. Таким образом, надпись на кнопке «Cancel» будет переведена на заданный тобой язык. Django поставляется с большим набором готовых переводов.

Измени язык, отредактировав следующую строку:

Нам также необходимо добавить в настройки информацию о расположении статических файлов (мы познакомимся со статическими файлами и CSS в следующих главах). Спустись в конец файла и после переменной STATIC_URL добавь новую — STATIC_ROOT :

Когда наcтройка DEBUG имеет значение True , а настройка ALLOWED_HOSTS пуста, имя хост твоего веб-сайта сверяется со списком [‘localhost’, ‘127.0.0.1’, ‘[::1]’] . Ни одно из значений не соответствует имени хоста на PythonAnywhere при публикации нашего приложения, поэтому нам необходимо изменить следующую настройку:

Примечание: В случае если вы используете Chromebook, добавьте следующую строку в конец файла settings.py: MESSAGE_STORAGE = ‘django.contrib.messages.storage.session.SessionStorage’

Настройка базы данных

Существует множество различных баз данных, которые могут хранить данные для твоего сайта. Мы будем использовать стандартную — sqlite3 .

Она уже выбрана по умолчанию в файле mysite/settings.py :

Чтобы создать базу данных для нашего блога, набери в командной строке следующее: python manage.py migrate (мы должны быть в директории djangogirls , где расположен файл manage.py ). Если всё прошло успешно, то ты увидишь следующий результат:

Вот и всё! Пришло время запустить веб-сервер и посмотреть, работает ли наш веб-сайт!

Запуск веб-сервера

Ты должна быть в директории, где расположен файл manage.py (в нашем случае — djangogirls ). Запустим веб-сервер из командной строки: python manage.py runserver :

Если ты работаешь в Windows, и команда падает с ошибкой UnicodeDecodeError , используй вместо неё другую:

Теперь тебе нужно проверить, работает ли веб-сайт — открой браузер (Firefox, Chrome, Safari, Internet Explorer или любой другой) и набери следующий адрес:

Если ты используешь Chromebook или Cloud9, вместо этого нажми на ссылку во всплывающем окне, которая должна появиться в правом верхнем углу командного окна, в котором запущен веб сервер. Ссылка может выглядеть так:

Поздравляем! Ты только что создала свой первый веб-сайт и запустила его на веб-сервере! Ну не круто ли?

Пока работает веб-сервер, в терминале не будет приглашения для ввода команд. Ты всё ещё сможешь ввести текст, но не сможешь выполнить никакую другую команду. Это происходит потому, что сервер продолжает работу, «слушая» входящие запросы.

Мы рассматривали, как работают веб-сервера, в главе Как работает интернет.

Веб-сервер займёт командную строку, пока ты его не остановишь. Чтобы и дальше иметь возможность набирать команды, открой ещё одно окно терминала и активируй в нём виртуальное окружение. Чтобы остановить веб-сервер, перейди обратно в окно, в котором он работает, и нажми CTRL + C — кнопки Control и C вместе (в Windows может потребоваться нажать клавиши Ctrl + Break).

Готова к следующему шагу? Пришло время создать содержимое для нашего блога!

Как я изучал(изучаю фреймворк Django). Личный опыт.

Все что далее, — мой личный опыт изучения фреймворка Django. Может быть пригодится таким же новичкам в программировании как и я.

Что нужно знать (необходимый МИНИМУМ) относительно Python:

-Ввод и вывод данных

-Функции и рекурсия

-Работа с модулями и функциями (создание, импортирование, вызов. )

-Основы регулярных выражений

В настоящее время, актуальной версией является Django 2.0. Но я советую начать изучение с версии 1.11. Почему именно так:

1. По Django 2.0 мало различных материалов на русском языке. Для 1.11 материалов достаточно.

2. Django 2.0 и 1.11 очень похожи, но в 2.0 сделали упрощённый синтаксис маршрутизации URL. Из-за этого могут возникнуть сложности на начальном этапе, если пытаться обучаться по материалам основанным на 1.11 версии.

Цукерберг рекомендует:  Java - Отличие POJO от обычного класса,Java

3. Большинство готовых приложений и расширений до сих пор поддерживают только 1.11 версию и не поддерживают 2.

4. Расширенная поддержка версии 1.11LTS заканчивается в 2020 году, а 2.2LTS пока не видно.

Итак, расскажу как изучал я. Может быть кому-нибудь покажется полезной данная информация.

I. -НАЧАЛО («копипастим» свой первый проект):

-понять как работает фреймворк(установка, как создается проект, архитектура, как взаимодействуют его основные компоненты — urls, модели, шаблоны, views)

1. Проходим туториал на Django-girls.

Шаг за шагом копипастим и пытаемся понять что вообще происходит.

-Основы работы в консоли Linux

-Создание и работа в виртуальном окружении Python.

-Основы основ Django (urls, модели, шаблоны, views)

Альтернативный вариант (более короткий):

Учебник официальная документация (docs.djangoproject.com/en/1.11 — раздел FirstSteps). Или перевод документации с портала djbook.ru

Версия 1.9 а не 1.11, но в этом нет ничего страшного.

2. Цикл лекций «Web-технологии. Разработка на DJANGO» от Mail.ru

Если не интересны основы-основ про web-разработку (уже знаете или задача быстро освоить Django), тогда начинаем смотреть с «9. Web-технологии. MVC фреймворки | Технострим» и дальше.

-Архитектуре и принципам взаимодействия компонентов, основам Django

3. Книга «Django: практика создания Web-сайтов на Python» Владимир Александрович Дронов:

ссылка: сами кУпите или найдёте.

Читаем главы с 1 по 7. Главу 2 опционально можете пропустить, если знакомы с основами Python.

Выполняем примеры из книги на тестовом проекте — создаем модели, через шелл добавляем-изменяем-сортируем-фильтруем данные в модели, создаем urls привязки, пытаемся писать первый контроллер, смотрим как и что можно сделать в темплейтах.

-Пониманию основ MVC

-Через примеры кода начнет приходить понимание, как все работает.

-Через копипасту проекта в общем виде начали понимать как все устроено и работает

-Через лекции MAIL.ru узнали как работают web-приложения, как выглядит архитектура типичного web-приложения(взаимодействие бекенда-фронтэнда, работа протоколов, общая архитектура), узнали место Django в этой архитектуре

-Через книгу более детально познакомились с паттерном проектирования MVC (что такое модель, контроллер, представление), через примеры кода начали понимать как это может работать.

II. ПРОДОЛЖЕНИЕ НАЧАЛА(продолжаем «копипастить»):

1. Ищем курс «iTBursa Python&Django». Продажу курса уже закрыли (скорее всего видимо потому, что курс попал в открытый доступ). В курсе есть основы Python и Django. Плюсом идут основы: html/css, bootstrap web, http, databases, linux, shell, git/github, nginx, deployment.

Продолжаем копипастить уже по этому курсу, но теперь самостоятельно выполняем «Контрольные задания»(или не выполняем). В принципе этот курс мог бы заменить все вышеперечисленное. Но так как каждый человек воспринимает информацию по разному, ИМХО лучше усвоится информация, полученная из разных (по типу и виду подачи информации) источников.

Дополнительно: курс itvdn-Django от Антона Мазуна

2. Продолжаем читать и перечитывать Дронова

3. Изучаем официальную документацию или перевод документации 1.9(djbook.ru)

-На этом этапе уже должно быть освоено достаточное количество материалов для написания своего собственного приложения.

II. КОНЦА НЕ ВИДНО(создаём свой собственный проект):

Собственно если все делали правильно, на этом этапе должны быть все необходимые знания для реализации собственного проекта. По сути, можно сосредоточиться только на Джанго, а фронтэнд слепить из кусков Bootstrap.

Теперь отправляемся в свободное плавание на просторы интернета. Теперь уже сами ищем статьи, видео, гайды, бестпрактис. Продолжаем читать Дронова и переходим на актуальную версию Django 2.x

Дополнительно можно начать читать:

-Django подробное руководство. Адриан Головатый. Джейкоб Каплан-Мосс. Книга очень старая (2010), многое изменилось, но общие принципы остались те же.

-Tango with Django. Многие советуют эту книгу.

Вот ещё парочка:

-Web Development with Django cookbook

Извиняюсь за возможные орфографические, и в особенности, за пунктуационные ошибки.

ЗЫ. Кстати, в комментах к моему предыдущему посту (Моя история: опыт изучения программирования) и по почте многие высказывали мысль о создании канала в Телеграмм по данной тематике. Такой канал я создал. Не знаю можно ли ссылку(или нет). Называется python_noobs(PythonNoobs). Сейчас там 12 человек(в основном пикабушники с предыдущего поста — всем кому рассылал свою подборку материалов). Создан чисто для новичков. На канале обмениваемся опытом изучение Python и смежных технологий, делимся ссылками на полезные материалы(статьи, видео, гайды, курсы. ), собираем команду для совместных проектов и просто общаемся, чтобы не прокрастинировать :)

Первое, что нужно сделать, запуская проект на Django

Приветствую сообщество, встала передо мной задача написать социальную сеть. А коль скоро язык программирования, которым я более-менее владею — это Python, я выбрал фреймворк Django для реализации проекта. Чтобы не тратить время на написание HTML шаблонов и CSS стилей, эти файлы я беру в интернете с пометкой Free. В основном это шаблоны от Colorlib.

Сразу оговорюсь, что использую PyCharm, поэтому могу не знать все команды из файла manage.py.

После создания проекта в среде, как и в любом Django проекте, первое, что необходимо сделать — внести изменения в файле settings.py а именно:

    Меняем две переменные на

Добавить папку для статических и медиа файлов

Далее создаём своё приложение командой

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

Как только приложение создано, нам нужно его зарегистрировать для того, чтобы начать его использовать. Добавим приложение в список используемых.

Далее необходимо определить url адрес для нашего приложения, что тоже является хорошим тоном разработки. В папке приложения (не путать с папкой проекта) нужно предварительно создать файл urls.py. А затем в папке проекта в файле urls.py импортируем функцию include и прописываем адрес. Об этом также написано в комментариях в самом файле.

Если на этом этапе мы запустим сервер командой

в командной строке (в PyCharm кнопка «Запуск» или «Debug»), то получим ошибку, ведь в папке приложения файл urls.py (далее — account/urls.py) пустой.

Заполним его следующим кодом.

Теперь выйдет ошибка, потому что account/views.py пустой. Исправим.

Почти готово. Что уже сделано:

  1. Создано приложение в проекте.
  2. Внесены изменения в настройках.
  3. Прописан адрес в главном urls.py проекта.
  4. В приложении создан файл urls.py и в нем прописано представление (views).
  5. В представлении (views) создана функция обработки url адреса и HTML шаблона.

Пора создать шаблон.

При создании проекта у нас автоматически создаётся папка ‘templates’, в ней нужно создать папку my_app, внутри my_app создать файл index.html. Для проверки в теге body можно записать:

и можно запускать сервер.

В итоге мы должны увидеть вот это (изображение):

Если на сайте используются какие-либо CSS стили или JavaScript файлы, а это 10 из 10 случаев, то нужно их подгрузить перед строкой DOCTYPE командой

При этом в папке приложения создать папку «static», внутри держать CSS, JS и тд. А в HTML шаблоне в теге link параметре href указать абсолютный путь к файлу, например:

Итого, файл будет выглядеть вот так:

В общем-то нам этом введение и заканчивается. Дальше все действия будут похожи, только суть будет разной. Будут разные формы (тег form в HTML) в файле forms.py приложения (нужно предварительно создать этот файл), будет разная логика приложений, описанная в views.py, ну и модели в базе данных, описанные в models.py. Но сам алгоритм действий тот же самый

  1. Создаём адрес.
  2. Создаём представление (логику).
  3. Создаём HTML шаблон.
  4. Связываем всё вместе.

+ — пара промежуточных действий в виде форм и моделей.

В блоге Metanit (ссылка внизу) хорошо описана суть Модель — Шаблон — Представление, копипастить не собираюсь, там же есть теория и про формы, и про модели.

В «Руководство Django Girls» (ссылка внизу) можно узнать подробней о расширении шаблонов HTML (крайне полезная фишка Django), о создании учётной записи администратора, о добавлении данных в созданные модели.

Цукерберг рекомендует:  Реверсинг и обфускация, как это работает

А я на этом заканчиваю. В следующей части будет код создания формы регистрации на сайте, а чтобы не мусорить на Хабре, дам ссылку на гитхаб. Успехов в главном, товарищи.

Какие файлы типа должны быть помещены в файл .gitignore в проекте Django

Из моего другого post, я знаю, что __pycache__ следует поместить в .gitignore , когда я использую git.

И в другом post Я видел, есть также .pyc и .pyo .

ли все они должны быть помещены в файл .gitignore ?

Можно ли суммировать в проекте Python/Django, какие файлы следует поместить в файл . gitignore ?

Создан 17 ноя. 17 2020-11-17 03:41:29 qg_java_17137

Это будет отличаться для проектов Python в целом от проектов Django. Общее правило: создаваемые вещи должны входить в ‘.gitignore’. Я бы предложил найти некоторые проекты Python и Django на GitHub и посмотреть, что у них есть в их ‘.gitignore’. Также обратите внимание, что если вы добавите ‘__pycache __ /’, вам не нужно добавлять ‘* .pyc’ и’ * .pyo’, если ваш проект не запущен на Python 2. – user8651755 17 ноя. 17 2020-11-17 03:47:30

1 ответ

Существует популярный веб-сервис под названием Gitignore.io, который помогает разработчикам создавать файлы gitignore для популярных фреймворков и языков. Вы можете увидеть Django один here.

Кроме того, я также рекомендовал бы игнорировать вещи элементы окружения, такие как virtualenv или .env файлы, которые относятся к местной среде, что код запускается с. Это также позволяет хранить пароли и секреты в файлах среды и не допускать их из репозитория git.

Наконец я хотел бы также добавить папку Джанго static в список игнорируемых файлов, так как он собирается с collectstatic всякий раз, когда развертывается код.

Создан 17 ноя. 17 2020-11-17 03:53:46 Marcus Lind

Another Fine Blog

Все нижеописанное отностится к версии django-1.4, в 1.3 и ниже есть некоторые отличия.

Основная причина недоумения и непонимания людей всю жизнь видевших только PHP фреймворки в как раз в структуре проекта и принципах работы фреймворка Django. Я надеюсь после прочтения туман рассеется и ориентироваться станет много проще.

Создание любого проекта Django начинается с команды

где first — имя проекта, это внутреннее имя, так будет называть папка с проектом и python-package соответствующие ограничения на имя — без пробелов, только буквы-цифры, а так же имя проекта не должно конфликтовать с названиями python-модулей, вроде test, io, sys итд.

Результатом выполениния команды будет папка first в текущей директории, с неким набором вложенных папкок и файлов. Рассмотрим подробнее:

В корне проекта видим один файл — manage.py — название всегда одинаковое. Это скрипт для управление проектом, все остальные действия над проектом выполняются исключительно с его помощью: добавление новых приложений, сборка статичных файлов итд.
И папку first (точнее даже python-package) с несколькими файлами. В ней хранятся все настройки проекта.
__init__.py — пустой, и нужен только для того, чтобы python определял директорию как пакет.
settings.py — глобальные настройки проекта. Здесь настраивается почти всё — пути, базы данных, подключенные приложения, middleware итд
urls.py — файл привязок URL. Именно он отвечает, за то, что по такому-то урлу будет вызываться такой-то скрипт.
wsgi.py — WSGI приложение для взаимодействия с WEB-сервером.

При работе с POSIX-системами, для удобства можно поменить manage.py как исполняемый: chmod +x manage.py. Для краткости я буду считать его исполняемым, и запускать соответственно:

это же действие можно сделать с указанием интерпретатора:

Windows определяем запускаемый файл по расширению, и в случае корректной установки Python так же будет без проблем запускать manage.py

Теперь создадим приложение с названием main:

посмотрим структуру проекта, она изменилась:

добавилась папка (точнее python-package, поскольку так же наличиствует __init__.py) main несколькими файлами.
Рассмотрим подробнее:
models.py — файл хранит модели данного приложения.
tests.py — тесты, об этом нужен отдельный разговор.
views.py — представления данного приложения.

Автоматически не создается, но имеет место быть еще один файлик:
admin.py — в нем хранятся настройки интерфейса администратора приложения.

Как это все работает?

  1. Браузер запрашивает URL , сервер передает запрос в Django
  2. Django формирует объект HttpRequest
  3. Запускаются методы process_request Middleware-классов
  4. Ищет соответствия в файле urls.py
  5. Запускаются методы process_view Middleware-классов
  6. Передает Request и параметры (если таковые определены в urls.py) в найденное представление
  7. Выполняется функция представления, возвращается объект HttpResponse
  8. Запускаются методы process_response Middleware-классов
  9. Django передает ответ на WEB-сервер и дальше в браузер

Это сильно упрощенная версия, но вполне соответствующая действительности.

Установка 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.

  1. Скачайте get-pip.py. Если ваш браузер сразу открывает код, то на странице нажмите правую кнопку мыши и выберете «Сохранить как…»
  2. Запустите скачанный файл с правами Администратора или через командную строку. Для установки pip через командную строку, перейдите в ней в папку с скаченным get-pip.py и выполните команду:
  3. Снова выполните проверку версии pip.

Шаг 3. Создание виртуального окружения

Виртуальное окружение (virtualenv) необходимо, чтобы изолировать фреймворк Django для каждого проекта. Это предотвратит возможное изменения в одном проекте при редактировании другого, а также позволит использовать разные версии Django для разных проектов.

Мы рекомендуем выполнять данный шаг, хотя его можно и пропустить. Но лучше уже при обучении всё делать правильно и «по уму».

Для установки виртуального окружения выполним несколько шагов:

    Откройте командную строку и перейдите в директорию, где хотите создать проект.

Здесь мы создали директорию djangoset1 и осуществили переход в неё.

Создадим виртуальное окружение с именем venvset1 (имя можно выбрать любое):

При выполнении этой команды, создается новая директория с необходимыми файлами.
Запустим виртуальное окружение virtualenv, выполнив команду в командной строке Windows:

Если вы увидели строку, как на картинке выше, то всё у вас получилось.

Шаг 4. Установка Django в виртуальное окружение через pip

Подготовительные работы завершены. Теперь установим Django в созданное виртуальное окружение virtualenv через pip. Выполним в командной строке команду:

Если установка прошла успешно, вы увидите следующее:

На этом всё, теперь можно начинать изучать Django и написать своё первое приложение.

Можно ли запретить Django создавать файлы .pyc во время разработки?

Можно ли запретить Django создавать файлы .pyc? Я знаю, что Python создает их, когда модули импортируются, но есть ли способ отключить их?

Полностью понять, почему они созданы и т. Д., И захотят их, когда я пойду вживую, но в настоящее время они просто загромождают каталог, и это беспокоит меня — поэтому, пожалуйста, нет «вы не должны отказывать». Я также знаю, как я могу остановить их появление и т. Д. И т. Д. Я просто хочу знать, как я могу остановить их создание.

Понравилась статья? Поделиться с друзьями:
Все языки программирования для начинающих