Сайт о самых интересных местах в Москве.
Демо сайта доступно по ссылке: https://paszhukov.pythonanywhere.com/
Чтобы добавлять и редактировать локации, используйте админку: https://paszhukov.pythonanywhere.com/admin/
Нижеследующие инструкции описывают, как развернуть проект на локальной машине.
Первым делом, скачайте код:
git clone https://github.com/pas-zhukov/yandex-afisha.git
Установите необходимые зависимости командой:
pip install -r requirements.txt
Для работы проекта, в корень необходимо положить файл .env
со следующими полями:
DEBUG
— дебаг-режим. ПоставьтеTrue
, чтобы увидеть отладочную информацию в случае ошибки. Выключается значениемFalse
. По умолчанию -False
.SECRET_KEY
— секретный ключ проекта. Например:erofheronoirenfoernfx49389f43xf3984xf9384
. Обязательное поле!ALLOWED_HOSTS
— см документацию Django.TIME_ZONE
— временная зона в общепринятом формате.
- Применяем миграции
python manage.py migrate
- Создаём суперпользователя
python manage.py createsuperuser
- Запускаем dev сервер
python manage.py runserver
-
Открываем сайт по ссылке http://127.0.0.1:8000/
-
Для редактирования локаций используем панель админа по адресу http://127.0.0.1:8000/admin/. Для входа используем данные созданного ранее суперпользователя.
Для автоматизации загрузки локаций предусмотрена специальная команда:
python manage.py load_place <URL или путь к json-файлу>
Json-файл локации должен иметь правильную структуру: пример.
-
Для загрузки тестовых данных скачайте папку
places
из данного репозитория. -
Создайте bash скрипт со следующим содержимым и запустите его:
#!/bin/bash
for file in <путь к папке places>/*
do
if [ -f "$file" ]
then
python <путь к папке с проектом>/manage.py load_place "$file"
fi
done
- Если не было выведено ошибок, данные загружены в БД!
Код написан в учебных целях. Данные локаций взяты с сайта KudaGo.