CRM-система для Амбассадоров Яндекс Практикума - это пространство для комьюнити менеджера сообщества амбассадоров, в котором можно получать уведомления, делать рассылки и смотреть аналитику.
Клонирование реппозитория
git clone [email protected]:CRM-for-Yandex-ambassadors/backend.git
Перейдите в папку с проектом recruitment-process-back, установите и запустите виртуальное окружение.
cd recruitment-process-back
python -m venv venv
-
Если у вас Linux/MacOS
source venv/bin/activate
-
Если у вас windows
source venv/Scripts/activate
Установка зависимостей
pip install -r requirements.txt
Применяем миграции:
python manage.py migrate
Создаем суперпользователя:
python manage.py createsuperuser
Перейдите в папку crm_backend
cd crm_backend
- Если у вас windows
python manage.py runserver
- Если у вас Linux/MacOS
python3 manage.py runserver
python manage.py test
Для проверки процента покрытия тестами вам необходимо установить библиотеку coverage и выполнить команды:
pip install coverage
coverage run -m unittest discover
coverage report -m
Для того, чтобы при каждом коммите выполнялись pre-commit проверки, необходимо:
- Установить pre-commit
- Установить pre-commit hooks
Модуль pre-commit уже добавлен в requirements и должен установиться автоматически с виртуальным окружением.
Проверить установлен ли pre-commit можно командой (при активированном виртуальном окружении):
pre-commit --version
>> pre-commit 3.3.3
Если этого не произошло, то необходимо установить pre-commit:
pip install pre-commit
Установка хуков:
pre-commit install --all
Установка хука для commitizen
pre-commit install --hook-type commit-msg
В дальнейшем, при выполнении команды git commit будут выполняться проверки, перечисленные в файле .pre-commit-config.yaml.
Если не видно, какая именно ошибка мешает выполнить commit, можно запустить хуки вручную командой:
pre-commit run --all-files
Чтобы сгенерировать установленный git-commit, запустите в вашем терминале
cz commit
или сочетание клавиш
cz c
- Python 3.11
- Django 4.2
- Django Rest Framework 3.14.0