Как создать форму в Sitecore 6?

В большинстве CMS есть способ создания форм для заполнения пользователями или анонимными пользователями. Есть ли механизм для создания подобных форм в Sitecore 6?

Насколько я могу судить, единственный способ сделать такие формы — это вручную создать их в подмакете (пользовательском элементе управления), а затем добавить этот подмакет на страницу. Кто-нибудь знает лучший способ?


person John B    schedule 13.10.2009    source источник


Ответы (2)


Это зависит от того, кто вы хотите создавать формы.

Если вы хотите, чтобы авторы контента или администраторы могли использовать wysiwyg-подобный интерфейс для создания и обновления форм, я бы рекомендовал использовать модуль веб-форм для маркетологов, доступный для Sitecore. Хотя это, конечно, не панацея, позволяющая авторам контента создавать формы, она довольно надежна, а также очень расширяема.

Однако, если в первую очередь разработчики будут создавать и поддерживать формы, вам, вероятно, будет проще использовать подход подмакета.

По мнению ctford, модуль Web Forms for Marketers использует собственную базу данных для хранения данных форм, а не типичные базы данных контента Sitecore. И вы, вероятно, захотите сделать что-то подобное и для своих форм, а не записывать данные обратно в Sitecore. Но это будет зависеть от требований вашего бизнеса.

person Adam Weber    schedule 15.10.2009
comment
Я использую модуль веб-форм для маркетологов, и это приемлемо. Это также дает вам возможность экспортировать форму в элемент управления ascx, чтобы вы могли полностью контролировать ее, но тогда вы теряете гибкость редактора WYSIWYG для этой формы. - person John B; 31.12.2009

Ваше предложение UserControl - это то, как я бы это сделал.

Sitecore, как и другие CMS (например, RedDot), имеет автономную модель публикации. Содержимое заполняется в отдельной среде редактирования, а затем передается в живую среду.

Следовательно, живая среда доступна только для чтения с точки зрения CMS. Это запрещает собственную обработку форм, поскольку Sitecore не ожидает внесения обновлений в действующую базу данных. Для хранения данных от анонимных пользователей вам потребуется создать пользовательские таблицы базы данных вне контроля CMS.

Насколько мне известно, не существует API форм, сравнимого с Drupal. .

person ctford    schedule 13.10.2009