Я работаю над приложением, которое позволяет пользователю создавать проекты, отвечающие потребностям пользователей, проект в основном представляет собой форму, которую может отправить другой пользователь.Динамический ввод в базу данных
Я хочу, чтобы пользователь динамически создавал новые поля (с Javascript) для проекта (базовую форму) и выбирал пользовательские значения для каждого поля.
И когда проект (форма) готов, он может быть отправлен, и указанные пользователем значения будут переданы в базу данных. Затем другой пользователь может отправить форму и значения, выбранные первоначальным пользователем, являются параметрами для этой формы.
Значения (которые динамически создаются пользователем), скорее всего, будут основными данными, такими как имя, телефон, электронная почта и т. Д. Но есть также варианты для конкретных данных, таких как еда, адрес и т. Д. Я хочу, чтобы чтобы пользователь мог запрашивать любые данные, которые он видит необходимыми.
Итак, как мне создать структуру моей базы данных? Я не могу быть уверен, что и сколько полей пользователь собирается выбрать для своего проекта, я думал об этом приложении в традиционной реляционной базе данных, скорее всего Postgres или Mysql.
Нужно ли создавать столбцы для всех данных, которые я могу придумать (или разрешить пользователю создавать), или это можно сделать каким-то другим способом?
Я просто скажу, что у нас есть что-то вроде этого, где я работаю, и это страшная боль, связанная с кодом и интерпретация данных. Если вы можете сделать то, что хотите, более структурированным способом, я сначала скажу об этом, но если не EAV, возможно, это хороший старт. – Leeish
Спасибо всем, кто нашел время ответить на этот вопрос. Загляните в каждое решение и попытайтесь выяснить, что лучше для этого проекта. – stormpat