Выделите её мышкой и нажмите Enter
После того как вы установили Python, Django и (возможно) сервер баз данных и библиотеку Python для него, вы можете сделать первый шаг в разработке веб приложения, создав проект.
Проектом является набор настроек для экземпляра Django, включая конфигурацию базы данных, параметров для Django и настроек приложения.
Если вы используете Django в первый раз, вам потребуется
позаботиться об инициализации проекта. Создайте новый каталог в
котором вы будете работать, например,
/home/username/djcode/
.
Если вы раньше использовали PHP, вы вероятно размещали код в
корневом каталоге веб сервера (например, в
/var/www
). При использовании Django так
делать не следует. Это плохая идея размещать код в таком
месте, потому что есть риск доступа сторонних лиц к вашему
коду. Это плохо.
Разместите ваш код в каком-нибудь каталоге вне корневого каталога веб сервера.
Перейдите в созданный каталог и выполните команду
django-admin.py startproject mysite. Она
создаст каталог mysite
в текущем каталоге.
Скрипт django-admin.py
должен быть в
вашем системном пути, если вы устанавливали Django с помощью
утилиты setup.py
.
Если же вы используете код из ствола, то он должен быть в
каталоге djtrunk/django/bin
. Так как вы
часто будете использовать скрипт
django-admin.py
, рассмотрите его
добавление в системный путь. На Unix вы можете
воспользоваться символической ссылкой, например:
sudo ln -s /path/to/django/bin/django-admin.py \
/usr/local/bin/django-admin.py
На Windows вам потребуется внести изменение в переменную
среды PATH
.
Если вы установили Django из пакета вашего дистрибутива
Linux, то django-admin.py
может
называться просто django-admin
.
Если вы увидите сообщение «permission denied[4]
» при запуске django-admin.py startproject, вам потребуется изменить права доступа к
файлу. Чтобы сделать это перейдите в каталог где установлен файл
django-admin.py
(например, в
/usr/local/bin
) и выполните команду
chmod +x django-admin.py.
Посмотрим на результаты работы команды:
mysite/
__init__.py
manage.py
settings.py
urls.py
Опишем назначение каждого файла:
__init__.py
: Файл необходим для того,
чтобы Python рассматривал данный каталог как пакет, т.е.,
как группу модулей. Это пустой файл и обычно вам не
требуется добавлять что-либо в него.
manage.py
: Это утилита командной
строки, которая позволяет вам взаимодействовать с проектом
различными методами. Наберите python manage.py help для получения информации о возможностях
утилиты. Вы не должны изменять содержимое данного файла,
он создан в данном каталоге в целях удобства.
settings.py
: Настройки для текущего
проекта Django. Посмотрите на содержимое файла, чтобы
иметь представление о типах доступных параметров и их
значениях по умолчанию.
urls.py
: Описания URL для текущего
проекта Django, так сказать «оглавление» для
вашего сайта. На момент создания должен быть пустым
(FIXME: по-моему авторы гонят.)
Несмотря на свой небольшой размер, эти файлы формируют работоспособное приложение Django.
Для проверки правильности установки Django давайте запустим сервер разработки, чтобы посмотреть на наше приложение в действии.
Сервер разработки Django (также называемый «runserver», по имени команды, которая его запускает) — это встроенный лёгкий веб сервер, который вы можете использовать в процессе разработки вашего сайта. Он включен в Django для того, чтобы вы могли быстро приступить к разработке вашего сайта без траты времени на конфигурирование вашего боевого веб сервера (т.е., Apache) раньше времени. Этот сервер разработки отслеживает изменения в вашем коде и автоматически перезагружает его, помогая видеть вносимые вами изменения без перезагрузки веб сервера.
Для запуска сервера перейдите в каталог
mysite
(cd mysite),
если вы ещё не сделали этого, и выполните команду:
python manage.py runserver
Вы увидите нечто подобное этому:
Validating models...
0 errors found.
Django version 1.0, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Команда запускает сервер локально на порту 8000. Сервер принимает только локальные соединения с вашего компьютера. Теперь он запущен, посетите страницу http://127.0.0.1:8000/ с помощью браузера. Вы увидите страницу «Welcome to Django[5]». Всё работает!
Ещё об одном обязательно надо сказать. Несмотря на то, что сервер разработки очень удобен во время разработки, сопротивляйтесь искушению использовать этот сервер в боевом режиме. Этот сервер может обрабатывать только один запрос в единицу времени и он не проходил никакого аудита на предмет безопасности. Когда придёт время поднять ваш сайт, обратитесь к главе «Развёртывание Django» для информации о том, как установить туда проект Django.
По умолчанию, команда runserver запускает сервер разработки на порту 8000, принимая только локальные соединения. Если требуется изменить порт, его можно указать в аргументах командной строки:
python manage.py runserver 8000
Указав IP адрес, вы разрешаете веб серверу обрабатывать внешние подключения. Это особенно полезно, если требуется разделить разрабатываемый сайт с другими членами команды. IP адрес 0.0.0.0 указывает серверу принимать подключения со всех имеющихся сетевых интерфейсов:
python manage.py runserver 0.0.0.0:8000
Когда вы сделаете это, другие компьютеры в вашей локальной сети смогут получить доступ к вашему сайту на Django по IP адресу его компьютера, например, http://192.168.1.103:8000/. Следует отметить, что вам потребуется посмотреть свои сетевые настройки для определения вашего IP адреса в локальной сети. Пользователи Unix могут воспользоваться утилитой ifconfig. Пользователи Windows — утилитой ipconfig.
После запуска сервера, посетите http://127.0.0.1:8000/ с помощью вашего веб браузера. Вы увидите страницу «Welcome to Django». Оно работает!
Парни, спасибо за труды. Сегодня первый раз знакомлюсь с Django. Установил с git версию root@star:/usr/lib/python2.7/dist-packages# python -c "import django; print django.VERSION;"
(1, 5, 0, 'alpha', 0)
я так понял структура проекта поменялась? потому как у меня в результате выполнения команды
/home/djcode/Django-1.4-446/django/bin/django-admin.py startproject mysite
получилась такая структура:
└── mysite
├── manage.py
└── mysite
├── __init__.py
├── __init__.pyc
├── settings.py
├── settings.pyc
├── urls.py
├── urls.pyc
├── wsgi.py
└── wsgi.pyc
Ответ на akajedi
Парни, спасибо за труды. Сегодня первый раз знакомлюсь с Django. Установил с git версию root@star:/usr/lib/python2.7/dist-packages# python -c "import django; print django.VERSION;"
(1, 5, 0, 'alpha', 0)
я так понял структура проекта поменялась? потому как у меня в результате выполнения команды
/home/djcode/Django-1.4-446/django/bin/django-admin.py startproject mysite
получилась такая структура:
└── mysite
├── manage.py
└── mysite
├── __init__.py
├── __init__.pyc
├── settings.py
├── settings.pyc
├── urls.py
├── urls.pyc
├── wsgi.py
└── wsgi.pyc
Вопросы задавайте на форуме. Структура поменялась, читайте документацию. Ну и 'alpha' не используйте, если вы конечно не планируете искать баги в нестабильной версии.
Данная статья уже не актуальна и вообще не работает даже на версии Django 1.3
и Вообще сначала нужно устанавливать PIP и джангу надо ставить через PIP.
Потом создается проект python manage.py startproject myp
а потом еще создается первое приложение python manage.py startapp my_app
только тогда появляется структура соответствующая офф докам
mysite
├── manage.py
└── mysite
├── __init__.py
├── __init__.pyc
├── settings.py
├── settings.pyc
├── urls.py
├── urls.pyc
├── wsgi.py
└── wsgi.pyc
Редактировать нельзя, просто хотел сказать что структура выглядит не так, но суть в том что похожая на данную.