Я создаю приложение для викторины, которое динамически создает персонализированный результат на основе ваших ответов.
Будет 4-5 различных пользовательских переменных в сочетании с вашим ответом на каждый вопрос, определяющий ваш результат.Это означает, что будет примерно 100 различных «текстовых фрагментов», которые будут смешаны и сопоставлены, чтобы конечный результат отображался правильно.
У меня возникли некоторые проблемы с тем, как реализовать это на практике, и мне потребуется некоторое руководствоОпыт подобных подходов.
Фрагменты текста будут установлены и сохранены в таблице базы данных под названием «Тексты».Они, в свою очередь, будут отмечены скобками (или «ключами»), чтобы показать, какие элементы выбираются динамически.Эти элементы основаны на ответах пользователя, результате или других фрагментах текста.
Прекрасно работает все из одной таблицы.Это рекурсивная функция, которая получает все тексты на основе каждой клавиши-скобки.
Проблема начинается при попытке получить ключи и запросы из другой таблицы, поскольку было бы очень утомительно отмечать все этииначе (например, [identifier](table)
, а также для отображения, какие условия в предложении «ГДЕ ...» должны быть заполнены.
Я ищу некоторые указатели, если я думаю об этом неправильнои / или если бы было более простое решение проблемы?
![](https://i.stack.imgur.com/TMqX1.png)
Порядок на изображении выглядит следующим образом:
1. «Цикл» начинается с идентификатора «get_full_result» и получает текстовое значение
2. Программа просматривает извлеченное текстовое значение для [ключей] в скобках
3. Здесь должна происходить динамическая выборка, выбирая некоторые данные из других таблиц и некоторые данные из той же таблицы (тексты)
4. Пользователю предоставляется читаемый текст результата