Skip to content

About

Пишем Афишу

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

68 Commits

Folders and files

Repository files navigation

🗺️ Интернет-афиша "Интересные места Москвы"

Интерактивная карта интересных мест Москвы с возможностью управления контентом через админку.

Снимок экрана от 2026-07-04 12-02-05

GitHub Репозиторий Лицензия MIT Демо сайта

🚀 Возможности

В админке можно добавлять места и описания, Снимок экрана от 2026-07-04 12-09-54

фото этих мест:

Снимок экрана от 2026-07-04 12-16-53

Порядок фотографий для отображения можно настраивать перетаскиванием


📦 Требования

  • Python 3.10 (проверено на 3.10; более новые версии могут работать, но не тестировались) проверить версию можно так:
python --version
  • Часть настроек проекта берётся из переменных окружения. Чтобы их определить, создайте файл .env (точка в начале обязательна!) рядом с manage.py и запишите туда данные в таком формате: ПЕРЕМЕННАЯ=значение.
SECRET_KEY='ваш_секретный_ключ'
DEBUG=True #для работы в режиме разработки
ALLOWED_HOSTS=localhost,127.0.0.1 #для работы на локальном ПК

⚙️ Установка

Склонируйте репозиторий:

git clone https://github.com/Skip-Bug/django-affiche
cd django-affiche

Подготовте окружение:

Создайте виртуальное окружение с Python 3.10:

# Windows
py -3.10 -m venv venv
# Linux/macOS
python3.10 -m venv venv

Активируйте окружение

# Windows
venv\Scripts\activate.bat
# Linux/macOS
source venv/bin/activate

Установите зависимости

pip install -r requirements.txt

Файл requirements.txt должен содержать:

django~=5.2.12
Pillow~=12.2.0
django_admin_sortable2~=2.3.1
django_tinymce~=5.0.0
environs~=15.0.1
requests~=2.34.2
django_cleanup~=9.0.0

Примените миграции

python manage.py migrate

Создайте суперпользователя (для доступа в админку)

python manage.py createsuperuser

Загрузите тестовые данные

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

python manage.py load_place http://адрес/файла.json

python manage.py load_place https://raw.githubusercontent.com/devmanorg/where-to-go-places/refs/heads/master/places/%D0%90%D1%80%D1%82-%D0%BF%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%82%D0%B2%D0%BE%20%C2%AB%D0%91%D1%83%D0%BD%D0%BA%D0%B5%D1%80%20703%C2%BB.json

json файл должен иметь такую структуру содержимого:

{
  "title": "Название места",
  "imgs": ["ссылка1", "ссылка2"],
  "description_short": "краткое описание",
  "description_long": "полное описание",
  "coordinates": {
        "lng": "долгота",
        "lat": "широта"
    }
}

Пример содержимого:

{
    "title": "Лагерь «Подмосковный»",
    "imgs": [
        "https://raw.githubusercontent.com/devmanorg/where-to-go-places/master/media/d70328bcfd30a5751fc8b833918d1e94.jpg",
        "https://raw.githubusercontent.com/devmanorg/where-to-go-places/master/media/0976915841002135611c3697a7b4f3f9.jpg",
        "https://raw.githubusercontent.com/devmanorg/where-to-go-places/master/media/b3df33667dfd510b2c6baf78f6714190.jpg"
    ],
    "description_short": "«Кто шагает дружно в ряд — это сталкеров отряд», — так сегодня звучит кричалка заброшенного пионерлагеря «Подмосковный». Доехав до ж/д платформы «Кузяево» и пробравшись сквозь лес к месту назначения, можно почувствовать себя не только настоящим сталкером, но и, как говорят, увидеть пионеров-призраков.",
    "description_long": "<p>В своё время лагерь «Подмосковный» считался престижным местом отдыха детей «Мостотреста». Здесь могли разместиться до 2000 человек.</p><p>Из особенностей лагерной жизни тех лет бывалые вспоминают обилие комаров, ящериц и змей в кузяевских лесах, а также кузяевский фарфор, который, как бы сейчас сказали, был спонсором лагеря. Фарфоровые трофеи до сих пор периодически находят на развалинах. В лагере сохранились добротно выстроенные двухэтажные кирпичные корпуса, бассейн, искусственный водоём и традиционный для всех лагерей киноконцертный зал.</p><p>Масштабы и оснащённость лагеря восхищают. Однако сразу после закрытия лагерь, как водится, был «раздет догола» вандалами. На развалинах проводятся квесты, однако нужно быть предельно осторожным, чтобы не свалиться в какой-нибудь подвал или не наткнуться на оголённую арматуру, внутри корпусов находиться небезопасно.</p><p>Сегодня, помимо сталкеров, ищущих романтики на этих руинах, лагерь стал плацдармом для любителей экстремального пейнтбола. Но местные жители до сих пор жалеют о разрушении «Подмосковного» и охотно рассказывают истории о призраках пионеров.</p><p>Лагерь не охраняется, вход свободный.</p>",
    "coordinates": {
        "lng": "38.02520099999999",
        "lat": "55.59279999999996"
    }
}

⚠️ Если что-то пошло не так или хотите обновить данные в БД, лучше удалите "Места" в ручную в админке или через командную строку:

python manage.py shell
from places.models import Place
Place.objects.all().delete()

Затем запустите команду заново.

🚀 Запускайте сайт

python manage.py runserver

⚖️ Лицензия

MIT License

🎡 Цель проекта

Код написан в образовательных целях на онлайн-курсе для разработчиков dvmn.org.

About

Пишем Афишу

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages