Инструменты пользователя

Инструменты сайта


projects:lp:bmipk.ru

Проект bmipk.ru

Февраль, 2016

Февраль, 2016 г. Завершен.

Цели проекта

Доработка анкеты выпускника на сайте Башкирского межотраслевого института.

Особенности

CMS Symfony, HTML, JavaScript, PHP, AJAX.

Описание

Проект bmipk.ru

Очередная задачка на Symfony. Второй раз сталкиваюсь с этой CMS и второй раз первоначальный разработчик был неопытен.

Очень много проблем было с фронтом - подключались не существующие JS библиотеки, в самописных JS были опечатки. Из-за все этого часть заложенного функционала просто не работала. В целом не ясно как этот проект вообще сдавался заказчику.

Только правка этих мелких ошибок решила половину ТЗ. Для остального же пришлось расширить класс формы анкеты и доработать обработчик формы. Критической правкой оказалось разбиение поля «№ группы» на два - отдельно год выпуска, отдельно номер. Данные из формы записываются в разные базы данных (частично дублируясь) - часть пишется в базу данных анкет, а часть в общую базу. Если анкеты были конечным элементом и было достаточно расширить БД новыми полями и описать поля и их валидаторы в классе формы, то основную базу трогать не хотелось. В ней создавались пользователи и для них частично сохранялись данные из анкеты - мало ли где эти данные еще используются (как минимум в админке для поиска по анкетам).

Чтобы сохранить функционал, я перед сохранением формы я получил все поля формы из объекта, добавил в них нужное мне значение и заново сохранил в объекте. Такой подход может удивить, но с точки зрения ООП именно так и нужно работать. Хотя надо признать у меня и не было другого способа - поле класса с данными из формы приватно.

projects/lp/bmipk.ru.txt · Последнее изменение: 2016.03.09 14:46 — 127.0.0.1