Я хочу создать пакет в приложении, где пользователь имеет возможность создавать формы.Создатель динамической формы Symfony2
Эти формы будут анкетами с различными ответами. Знаете ли вы, существует ли уже подобный пакет?
Если этого не происходит. Как мне продолжить? Я всегда создаю формы только в таких файлах, как «Form \ Type \ UserType».
В этом случае нужно было бы генерировать динамически из базы данных, верно? Только я пропустил этот подход, может ли кто-нибудь дать понять, как я могу это понять?
Update:
Может быть, я думаю, что к сложному. Я не уверен, что служба формы решит мою проблему. Знайте, что я создал структуру базы данных, чтобы описать мою первоначальную ситуацию.
Пользователь может создать на бэкэнде следующие записи.
- шкала, шкала может содержать множество ответов (да, нет, может быть, хорошо, лучше ...)
- Категория вопрос
- вопрос, могут быть отнесены ко многим категориям и многие questionnairies
- Анкета может содержать много вопросов, и здесь пользователь может задать масштаб вопроса.
Таблица Масштабные
+----+--------+------------+----------+-----------+------------+ | id | name | alignment | isActive | isDeleted | createDate | +----+--------+------------+----------+-----------+------------+ | 1 | Yes-No | horizontal | 1 | 1 | 2014-09-25 | +----+--------+------------+----------+-----------+------------+
Таблица Items
+----+------+-------+------------+ | id | name | value | createDate | +----+------+-------+------------+ | 1 | Yes | 1 | 2014-09-25 | | 2 | No | 0 | 2014-09-25 | +----+------+-------+------------+
ManyToMany 'scale_items'
категории+----------+----------+ | scale_id | items_id | +----------+----------+ | 1 | 1 | | 1 | 2 | +----------+----------+
Таблицы для вопросительной категории
+----+---------+----------+-----------+------------+ | id | name | isActive | isDeleted | createDate | +----+---------+----------+-----------+------------+ | 1 | General | 1 | 0 | 2014-09-25 | +----+---------+----------+-----------+------------+
Таблица вопросительных
+----+-----------------------------------------+------------+ | id | question | createDate | +----+-----------------------------------------+------------+ | 1 | Are you satisfied with the cleanliness? | 2014-09-25 | +----+-----------------------------------------+------------+
ManyToMany 'question_category'
+-------------+-------------+ | question_id | category_id | +-------------+-------------+ | 1 | 1 | +-------------+-------------+
Таблица опросник
+----+-------------------+---------+----------+-----------+------------+ | id | name | version | isActive | isDeleted | createDate | +----+-------------------+---------+----------+-----------+------------+ | 1 | General Questions | 2.2 | 1 | 0 | 2014-09-25 | +----+-------------------+---------+----------+-----------+------------+
Теперь база данных содержит весы и предметы, вопросы и категории и таблицу для вопросника. Теперь я создал большое отношение, чтобы задавать вопросы вопросникам с заданной шкалой. На различные вопросы можно задать вопрос по разным шкалам.
Таблица questionnaire_question_scale
+----+-------------+------------------+----------+------+--------+ | id | question_id | questionnaire_id | scale_id | page | hash | +----+-------------+------------------+----------+------+--------+ | 1 | 1 | 1 | 1 | 1 | X321Z1 | +----+-------------+------------------+----------+------+--------+
На заключительном этапе я создать таблицу отношение назначить вопросник к нескольким пользователям.
Таблица questionnaire_user
+---------+------------------+ | user_id | questionnaire_id | +---------+------------------+ | 21 | 1 | +---------+------------------+
Теперь, если журнал пользователя в воздам указанные выше информацию как форма и здесь начинается моя проблема :)
Я думаю, что мое решение было неэффективным, так как если многие пользователи входят в систему, чтобы заполнить анкету, я должен генерировать каждый раз, когда вопросник (сложная структура) является формой.
Это конец для меня, к сожалению, я не знаю дальше.
Я был бы очень благодарен за идеи, советы и решение подходов
Посмотрите на пакеты опросов или опросов: https://packagist.org/search/?tags=survey https://packagist.org/packages/bait/poll-bundle или https://github.com/ Bodaclick/EnquiryBundle – Damien
Вы можете создавать формы динамически, следуя этому: http://symfony.com/doc/current/cookbook/form/dynamic_form_modification.html. Но вам почти наверняка будет лучше с существующим пакетом. – Cerad