Российский Новый Университет
Опубликован: 25.01.2016 | Доступ: свободный | Студентов: 2235 / 161 | Длительность: 16:40:00
Лекция 3:

Стиль кодирования в Django

< Лекция 2 || Лекция 3: 12345 || Лекция 4 >

Ваша настройка Git

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

  • $git init: В случае, если вы хотите скопировать существующий репозиторий на Git, в случае, когда ваш друг уже хранит проект где-нибудь на GitHub или BitBucket, используйте следующую команду:

    $git clone url: URL-адрес удаленного репозитория, например https://github.com/AlienCoders/web-development.git.

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

    Давайте взглянем на следующие команды и их использование:

  • $git add <file-name> или $git add: Добавляет все файлы в промежуточную область.
  • $git status: Используется для того, чтобы узнать статус рабочего каталога, какие были добавлены файлы в него, а какие нет.
  • $git status: Получить статус, что что-то изменилось и отправлено в промежуточную область, или же изменилось и не отправлено туда.
  • $git commit –m: Для применения сделанных изменений, сначала вы должны их добавить в промежуточную область. Затем вы их принимаете с помощью этой команды.
  • $git rm <file-name>: Если вы ошибочно добавили файл в промежуточную область, то с помощью этой команды можете его удалить из нее.
  • $git stash: Git не отслеживает переименование файлов. Другими словами, если вы переименовали файл, помещенный в промежуточную область, то вы должны его снова добавить в промежуточную область, а затем принять. Вы можете сохранить изменения, но в действительности не принимать в репозиторий с помощью этой команды.
  • $git stash apply: Берет все текущие изменения и помещает их в стек. Затем вы можете продолжать работу с учетом ваших изменений. Однажды, когда вы захотите получить сохраненные изменения, воспользуйтесь этой командой.

Ветви в Git

Другая концепция системы контроля версий – это ветви(Git). Ветвь — это как бы путь для сохранения ваших принятых изменений, и по умолчанию, сохранение происходит в главной ветви. Ветвь используется для отслеживания особенностей проекта. Каждая особенность может быть представлена в одной рабочей ветке. Когда особенность полностью готова, ее можно объединить с главной веткой.

Основная работа, которая протекает с ветвями, выглядит следующим образом: вначале вы задаете главную ветвь, и для каждой новой возможности создаете новую ветку. Изменения принимаются в новую ветку, и когда все будет готово с данной возможностью, можно объединить эту ветвь с главной. Это можно представить визуально, как описано далее:

  • $git branch: Чтобы представить список существующих ветвей через Git, используем данную команду.

  • $git checkout –b <new-branch-name>: С помощью этой команды может быть создана новая ветвь в существующем репозитории. Мы можем представить, как это будет выглядеть логически с помощью этой блок-схемы:

    Вы получите сообщение, уведомляющее вас о том, что вы переключились на новую ветку. Если вы хотите переключиться обратно на старую ветвь, то используйте следующие команды:

  • $git checkout <old-branch-name>. Вы получите сообщение: Switched to branch <old-branch-name>.
  • $git merge <branch-name>: используя эту команду, вы можете произвести слияние с указанной ветвью. Ваша текущая ветвь объединяется с ветвью <branch-name>. Для синхронизации с откатом изменений назад, на ветвь <branch-name>, вы можете выполнить команду checkout из-под текущей ветви применимо к ветви <branch-name>, а затем произвести повторное слияние. Вы также можете пометить важные точки в вашей истории принятия изменений, используя теги.
  • После принятия изменений, вы можете пометить важное принятие изменений тегом с помощью команды: $git tag –a v1.0.
  • Для получения новых изменения с удаленного сервера, вы можете получить эти изменения с Git используя команду $git fetch.
  • Для слияния изменений с текущей веткой, вы можете использовать команду $git pull.
  • После того, как вы завершите свои изменения, вы можете принять их и загрузить в удаленный репозиторий, используя команду $git push.

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

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

Итак, сейчас, когда у нас есть готовый к работе редактор кода, давайте откроем файл settings.py в папке проекта и посмотрим, что он содержит:

# Django settings for django_mytweets project.
DEBUG = True 
TEMPLATE_DEBUG = DEBUG 
ADMINS = ( # ('Your Name', 'your_email@domain.com'), )
MANAGERS = ADMINS
DATABASE_ENGINE = ''#'postgresql_jpsycopg2','postgresql',#	 'mysql', 'sqlite3' or 'ado_mssql'.
#	 DATABASE_NAME = ''	#Or path to database file#	 if using sqlite3.
DATABASE_USER =	''#Not	used with sqlite3.
DATABASE_PASSWORD = ' #Notused with sqlite3.
DATABASE_HOST =''#Set to empty string for localhost.# Not used with sqlite3.
DATABASE_PORT =	11	#	Set	to empty string for	default.
#	Not	used with sqlite3.

Файл settings.py содержит много строк, но мы обрезали его оставшееся содержимое.

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

Но сейчас нас интересует настройка базы данных. Как отмечалось выше, Django поддерживает несколько систем баз данных, поэтому необходимо определиться, какую систему базы данных мы будем использовать. Это контролируется переменной DATABASE_ENGINE. Если вы установили SQLite, установите значение переменной в ‘sqlite3’. В противном случае выберите значение переменной исходя из выбранной вами базы данных.

Следующий шаг – указание имени базы данных. Мы выберем говорящее имя для нашей базы данных; отредактируйте значение поля DATABASE_NAME и установите его значением django_mytweetsdb. С другой стороны, если у вас есть сервер базы данных, вам нужно сделать следующее:

  • Ввести верную информацию о базе данных: логин, пароль, хост и порт (Для SQLite не требуется).
  • Создать базу данных на сервере базы данных, так как с помощью Django такая операция недоступна. В MySQL, к примеру, это можно сделать, используя команду mysql или утилиту командной строки phpMyAdmin.

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

DATABASE_ENGINE = 'sqlite3'
DATABASE_NAME = 'django_mytweetsdb' DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = ''
DATABASE_PORT = ''

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

$python manage.py syncdb

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

< Лекция 2 || Лекция 3: 12345 || Лекция 4 >
Константин Боталов
Константин Боталов

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

Владимир Филипенко
Владимир Филипенко

Листинг показывает в 4-ой лекции, что установлен Django 1.8.4. Тут же далее в этой лекции указаны настройки, которые воспринимает Django 1.7 и младше.