Написать пост

Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1

Аватарка пользователя Елена Капаца

Разложили по полочкам, как выглядит миграция данных Django, где взять готовые модели и куда деплоить проект.

Обложка поста Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1

Впервые познакомившись с Django в 2015 году, я была удивлена его простоте. Разработчик стартапа развернул проект, и меня пустили поглазеть на админку:

Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1 1

На первый взгляд, она проще, чем low-code CMS вроде WordPress, но таит в себе бездну возможностей для кастомизации. Как и в случае Python, для Django написано множество плагинов, которые удовлетворят почти любой запрос.

Сейчас, спустя 8 лет, переношу свой сайт с Ghost CMS на Django. И хочу показать процесс изнутри и разобрать, какие сложности будут вас ждать после перехода.

Дабы сократить верстку фронтенда, я выбрала Django-шаблон –готовый проект на GitHub. Он поддерживается разработчиками и содержит документацию оптимального размера.

Разворачиваем проект на локальном сервере

Следуя инструкции, я форкаю репозиторий в выделенную на ноутбуке папку:

			git clone https://github.com/ashish-makes/django-tailwind-blog.git
		

Затем создаю виртуальное окружение:

			cd `django-tailwind-blog`
python -m venv env
source env/bin/activate
		

Устанавливаю необходимые компоненты и сам django-tailwind:

			pip install -r requirements.txt
pip install django-tailwind
		

Указываю в …/blogApp/settings.py, что инструмент установлен:

			INSTALLED_APPS = [
    # ...
    'tailwind',
    # ...
]
		

Дело за малым: задаю настройки CSS и базы данных:

			python manage.py tailwind init # Инициируем проект tailwind
python manage.py migrate # Создадим базу
		

Запускаю сервер и смотрю на сайт в браузере:

Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1 2

Репозиторий поддерживается в актуальном состоянии и болванка разворачивается без проблем. На 01.10.2023 не было ни конфликтов зависимостей, ни других ошибок.

Верстаем посадочную и основную страницы сайта

Поскольку текст зашит в код статически, то и заменить фразы вроде «I’m a Full Stack Developer…» на свой текст достаточно просто: в редакторе кода запускаем поиск по всем файлам. Для VSCode это Ctrl + Shift + F / Cmd + Shift + F:

Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1 3

Не буду подробно останавливаться на всех изменениях статики, ибо это простой текст, который меняется сочетанием Ctrl + F. По окончании переверстки сайт выглядит так:

Мигрируем с no-code CMS на Django: пошаговый гайд, часть 1 4

Кстати, вместо картинки с космонавтом я использовала свою айдентику с роботом. Практика показывает: долговечнее выходит залить на бесплатный CDN вроде webfx.com или даже Dropbox. HTML-код для картинки стал выглядеть так:

Разработчикам, которые решили завести блог, не стоит концентрироваться на дизайне. Разве что сайт будет являться портфолио фронтенд-девелопера. Для остальных категорий контент-мейкеров вполне сгодятся бесплатные темы, которые распространяются на Envato, GitHub и прочих ресурсах.

Заключение

Теперь, когда основная часть перехода выполнена, остались «косметические» работы, которые мы разберем в следующей статье:

  • как добавить данные в базу;
  • как задеплоить сайт на условно бесплатной платформе Railway;
  • как опубликовать проект на своем домене;
  • как верстать статью.
Следите за новыми постами
Следите за новыми постами по любимым темам
363 открытий2К показов