path | methods | filtering fields | ordering fields |
---|---|---|---|
/learn/courses/ |
GET |
||
/learn/courses/<id>/ |
GET , PUT , DELETE |
||
/learn/lessons/ |
GET |
||
/learn/lessons/<id> |
GET |
||
/learn/lessons/<id>/change/ |
PUT |
||
/learn/lessons/<id>/delete/ |
DELETE |
||
/accounts/users/ |
GET |
||
/accounts/users/<id>/ |
GET , PUT , DELETE |
||
/accounts/payments/ |
GET , PUT , DELETE |
payment_method , purchased_product |
payment_date |
/courses/<id>/subscribe/ |
PUSH ,DELETE |
path | method | data | описание |
---|---|---|---|
/accounts/users/ |
POST |
{"email":"[email protected]","password":"secret"} |
регистрация нового пользователя |
/accounts/token/ |
POST |
{"email":"[email protected]","password":"secret"} |
получение токена авторизации |
/accounts/token/refresh/ |
POST |
{"refresh":"<refresh_secret>"} |
обновление токена авториации |
Группа | Описание |
---|---|
manager | Группа менеджеров. Может править и просматривать курсы и уроки |
creator | Может создавать курсы и уроки |
Tip
Поддерживается файл .env
для назначения переменных. Шаблон файла
Переменная | Назначение |
---|---|
SECRET_KEY |
Ключ безопасности Django |
DEBUG |
Режим отладки |
DISABLE_PASSWORD_VALIDATION |
Отключить валидацию паролей пользователей (применимо только если DEBUG=True ) |
LANGUAGE_CODE |
Код языка |
TIME_ZONE |
Часовой пояс |
ALLOWED_HOSTS |
Разрешенные хосты |
Переменная | Назначение |
---|---|
DB_ENGINE |
Движок базы данных (django.db.backends.postgresql_psycopg2 - postgres; django.db.backends.sqlite3 - sqlite) |
DB_NAME |
Имя базы данных |
DB_USER |
Имя пользователя для подключения |
DB_PASSWORD |
Пароль пользователя для подключения |
DB_HOST |
Имя хоста с сервером |
DB_PORT |
Порт сервера |
- Создайте webhook в Stripe
- Активируйте событие
checkout.session.completed
- Полученный
Signing secret
в веб-хуке пропишите в переменнуюSTRIPE_ENDPOINT_SECRET
- Добавьте адрес внешнего сетевого интерфейса (или адрес выданный вам прокси-сервером) в переменную
ALLOWED_HOSTS
Переменная | Назначение |
---|---|
STRIPE_API_KEY |
Ключ для доступа к API Stripe |
STRIPE_ENDPOINT_SECRET |
Токен для доступа к веб-хуку |
Переменная | Назначение |
---|---|
INACTIVE_USERS_INTERVAL |
Интервал (дни) по истечении которого пользователь будет считаться неактивным |
CELERY_BROKER_URL ,CELERY_RESULT_BACKEND |
Брокеры для Celery |
CELERY_TASK_RETRY_COUNT |
Число повторных попыток для неуспешных задач |
Tip
Использование
python manage.py <команда>
Команда | Назначение |
---|---|
creategroups |
Создает необходимые группы пользователей |
Мнимимальная настройка для успешного развертывания контейнеров:
- Создайте файл
.env.docker
с указанными переменными:STRIPE_API_KEY
иSTRIPE_ENDPOINT_SECRET
- см. StripeAPPLICATION_HOSTNAME
- внешний адрес приложения. Используется для заданияALLOWED_HOSTS
,CORS_ALLOWED_ORIGINS
,CSRF_TRUSTED_ORIGINS
APPLICATION_SCHEME
(не обязательно) - по умолчаниюhttps
, при локальном запуске обычно не требуется.
- В сервисе
web
- Создайте учетную запись администратора стандартной командой Django:
python manage.py createsuperuser
- Создайте учетную запись администратора стандартной командой Django: