пользовательские формы ввода с пользовательскими полями - PullRequest
0 голосов
/ 08 апреля 2011

Мне было поручено создать форму ввода пользователя, которая имеет набор определенных полей и возможность для пользователя добавлять свои собственные поля на лету. например, текстовое поле, поле выбора с опциями и т.д. Что мне нужно учитывать?

Кроме того, как я буду хранить данные, поскольку я не знаю количество полей. Обычно в прошлых проектах поле в форме ввода сопоставлялось со столбцом в базе данных.

Любые идеи

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 08 апреля 2011

Это нужно будет хранить в денормализованном виде:

  • QuestionField
  • AnswerField

Так что вам, вероятно, понадобится таблица вопросов, которая определяет вопрос и, возможно, тип ввода и любые ограничения.

Затем у вас будет таблица ответов, которая связана с тем, чем является ваша сущность. Таблица ответов будет содержать вопрос и поле ответа.

0 голосов
/ 08 апреля 2011

Ваши пользователи заходят на ваш сайт?Если это так, вы можете использовать таблицу SQL для хранения элементов управления каждого пользователя, например:

UserName    ControlID   ControlType
JohnSmith   1       TextBox
JohnSmith   2       CheckBox
JoeBlogs    3       TextBox 

Затем вы можете иметь другую таблицу с каждым значением элемента управления в ней:

ControlID   Value
    1       My Text Value
    2       False
    3       Hi I’m Joe

Затем вы можете простосделать простое объединение, чтобы получить все пользовательские элементы управления и их значения.Вы также можете хранить информацию, такую ​​как местоположение / индекс элемента управления на экране.Делая это таким образом, вы можете добавить более одного значения для каждого элемента управления, что означает, что такие элементы, как списки, будут иметь несколько строк.

Если вы не используете систему входа в систему, вы можете делать то же самое, но с использованием файлов cookie.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...