Я создаю приложение для клиента, которое представляет собой пошаговый инструмент, который позволяет пользователю вводить данные для различных «разделов», которые затем выводятся в HTML-документ, который они могут загрузить.
Я стремлюсь к тому, чтобы это приложение было очень гибким, чтобы любые изменения со стороны клиента не требовали большой перестройки.
Я использую платформу Codeigniter.
То, как я сейчас на это смотрю, - каждый шаг, определенный в таблице базы данных, называется «шаги»
При инициализации приложение загружает эту таблицу и начинает с шага 0, до 10 - это все довольно просто, оно загружает новое представление для каждого шага, которое по сути является шаблоном
Для каждого шага может потребоваться, чтобы пользователь вводил некоторые данные в текстовые поля, или для текстовых полей и других шагов требуется, чтобы они выбирали значения из переключателей.
Различные этапы требуют различной обработки, т. Е. Текст просто сохраняется в БД, переключатели суммируются и усредняются и т. Д., А также каждый шаг будет иметь разные правила проверки
Я хочу построить его с достаточной гибкостью, чтобы, если клиент изменит вещи позже, нам не нужно было перестраивать приложение, поэтому я создал шаги в виде строк в таблице базы данных, но я не уверен, как бы я поступил о обработке каждого отдельного шага с точки зрения обработки данных по-разному и различной проверки. У меня могла бы быть одна функция с целой кучей условных выражений, но это, казалось, стало довольно грязным и казалось неправильным.
Надеюсь, это имеет смысл, поэтому, наверное, мой вопрос в том, как лучше всего к этому подойти?