Skip to content

Регистрация программ через админку на русском языке - #840

Merged
TThanos3000 merged 4 commits into
devfrom
feat/dev-admin-program-registration
Oct 27, 2026
Merged

TThanos3000 merged 4 commits into
devfrom
feat/dev-admin-program-registration

Conversation

@TThanos3000

@TThanos3000 TThanos3000 commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

Программа, созданная в Django-админке, могла остаться без формы регистрации: конструктор и публикация были доступны только на фронте. Теперь в карточке программы есть раздел Регистрация, где организатор может собрать анкету, сохранить черновик, проверить предпросмотр и опубликовать форму без перехода на фронт и без редактирования JSON.

Доступны все шесть типов вопросов, порядок и обязательность полей, подсказки, свои варианты, справочники вузов и регионов, вариант «Другое», импорт XLSX/CSV, предпросмотр на ширине компьютера и телефона, ссылка на опубликованную форму и запрос подключения внешней формы. Поля с ответами убираются после подтверждения; прежние ответы и опубликованная версия сохраняются. Черновик программы и форма публикуются вместе после общей проверки готовности.

Редактор использует общие сервисы с API, проверку версии, транзакции и права изменения программы. Руководитель без профиля эксперта может работать со своей программой; чужие программы остаются за пределами его списка. Создатель новой программы в админке автоматически становится ее менеджером. Настройка внешней формы также обновляет версию анкеты, чтобы устаревшая страница не перезаписала изменения.

Подписи регистрации и статусы переведены на русский. Язык стандартных элементов админки переключается на русский отдельно от публичного API. Фильтр экспертов отображается как «По программе», его тест проверяет русские подписи. Миграция 0041 меняет названия и подписи без изменения регистрационных данных. В AGENTS.md закреплено правило дублирования действий организатора в админке и русского языка интерфейса.

При запуске manage.py test исключен файловый middleware Loguru: каждый новый TestClient добавлял глобальные обработчики, из-за чего полный CI замедлялся и выдавал ошибки ротации файлов. Логи самих сервисов остаются в стандартном выводе. Настройка применяется только к тестовому запуску.

Проверено:

  • Полный набор backend: 1909 тестов на PostgreSQL в GitHub Actions — успешно.
  • Локальные проверки редактора, регистрации, уведомлений, публикации программ, административных форм и русского фильтра экспертов.
  • Django check, отсутствие незаписанных миграций, collectstatic, flake8, Black, проверка синтаксиса JavaScript и git diff --check.
  • Браузер: добавление вопроса, мобильный предпросмотр, публикация формы и появление ссылки на регистрацию.
  • Статика редактора размещена под /static/admin/, который проксируется к Django текущей конфигурацией DEV Nginx. Проверяются шаблон, поиск файлов Django и реальная маршрутизация Nginx.
  • Развернуто в DEV: миграция 0041 применена, JavaScript и CSS совпадают с исходниками, админка отвечает на русском, API программ возвращает 200.

@TThanos3000
TThanos3000 marked this pull request as ready for review October 27, 2026 13:23
@TThanos3000
TThanos3000 merged commit cf9a903 into dev Oct 27, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants