Создание основы проекта

Мы уже создали виртуальное окружение для проекта, теперь создадим его файловую структуру. Этот процесс автоматизирован, а структура проекта стандартизирована.
Процесс автоматического создания основы проекта называется scaffolding. Этот термин не имеет устоявшегося аналога в русском языке, но часто используется в англоязычной документации. Литературный перевод звучит как «возведение строительных лесов». Применительно к коду можно перевести как «автоматическое создание основы проекта».
Итак, возьмёмся за scaffolding. В командной строке убедитесь, что вы находитесь в папке проекта Yatube (или перейдите в неё). Виртуальное окружение должно быть активировано: строка ввода в терминале должна начинаться с (venv). Если всё ок — запустите в терминале команду создания базовой структуры проекта:
Скопировать кодBASH
(venv) $ django-admin startproject yatube
После выполнения этой команды у вас на диске появится такая структура директорий и файлов:
Скопировать код
Yatube //папка проекта ├── yatube //основная рабочая папка с кодом проекта | ├── manage.py | └── yatube //папка с настройками проекта | ├── __init__.py | ├── settings.py | ├── urls.py | └── wsgi.py ├── venv //папка виртуального окружения ├── README.md ├── .gitignore
В корневую директорию проекта Yatube вложены папки yatube и venv. Откройте в редакторе файл README.md: это файл для описания проекта. Напишите в нём, что это ваш учебный проект для Практикума.
Содержимое директорий проекта:

Запуск сайта

Файл manage.py — это оболочка для управления модулями Django. В дальнейшем мы будем через него добавлять новых администраторов (python manage.py createsuperuser), запускать проект (python manage.py runserver), создавать новые приложения (python manage.py startapp). Полный список доступных команд можно увидеть, запустив в терминале команду вызова справки: python manage.py --help.
Дальнейшие команды мы будем выполнять из папки с кодом проекта Yatube/yatube.
Перейдите в неё и запустите сервер проекта:
Скопировать кодBASH
(venv) $ cd yatube (venv) $ python manage.py runserver Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. September 10, 2019 - 15:03:24 Django version 2.2, using settings 'yatube.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
Объявив, что разработческий сервер доступен по адресу http://127.0.0.1:8000/, Django указывает вам на 17 каких-то недоделок, unapplied migration(s). О них мы ещё поговорим. А сейчас перейдите по ссылке http://127.0.0.1:8000/ и насладитесь успехом:
image
Ваш сайт на Django стартовал! Вы ещё ничему его не научили, но он работает и готов к взлёту.
Когда понадобится остановить сервер — закройте окно терминала или нажмите Control+C.