Техническое задание на доработку проекта Yii2
Необходимо выполнить комплексную доработку существующего проекта, которая включает изменения на трех уровнях: интерфейс, база данных и серверная логика API.
Основные задачи по пунктам:
- Расширение пользовательской формы:
- Добавить в существующую веб-форму три новых поля для ввода данных.
- Типы полей: одно текстовое поле (text input) и два выпадающих списка (select dropdown).
- Обеспечить валидацию новых полей в соответствии с логикой проекта.
- Модификация структуры базы данных:
- В соответствующей таблице базы данных MySQL добавить три новых столбца для хранения значений из новых полей формы.
- Типы и ограничения (constraints) столбцов должны быть согласованы с типами полей в форме.
- Корректировка API:
- Адаптировать существующий API-запрос (или контроллер) для приёма, обработки и сохранения данных из новых полей.
- Обеспечить, чтобы API корректно работал с обновленной моделью данных и структурой БД.
Требования к реализации:
- Изменения должны быть выполнены в рамках архитектуры фреймворка Yii2 (использование моделей, миграций для БД и т.д.).
- Код должен быть написан чисто, с комментариями к ключевым изменениям.
- Необходимо обеспечить обратную совместимость, если она требуется (старые записи в БД должны обрабатываться корректно).
- Готовое решение должно быть полностью протестировано.
Исполнителю будет предоставлен доступ к кодовой базе проекта и документации для уточнения деталей.