Web form vs entityform. Кто кого? Кузьменко Антон
Transcript of Web form vs entityform. Кто кого? Кузьменко Антон
PDFer: создаем PDF документы легко.
Троеглазов Андрей
WebForm vs EntityForm. Кто кого?
Кузьменко Антон
Кузьменко Антон Junior Drupal developer
Мой опыт связанный с Drupal
● Development ● Собственный модуль ● Интеграция со сторонними сервисами (amoCRM, Trello,
Slack, Instagram) ● Проведение DrupalSchool в НГТУ ● Котрибьютор на Drupal.org
WebForm vs EntityForm
Кто кого?
● WebForm: Модуль, который позволяет Вам добавлять формы. Каждая форма хранится в виде node. Таким образом вы добавляете новые формы как и другой контент сайта.
● EntityForm: Модуль Entityform с виду такой же, как и веб-
формы, но с использует API сущностей. Он использует обычное Field API в качестве своеобразного конструктора форм. Следовательно, вы можете добавить любые поля, которые вы хотите.
Что это?
Базовые отличия WebForm EntityForm
- Форма - нода - Форма — сущность
- Удобный и понятный UI - Не понятный UI для рядового пользователя
- Отправка настраивается из самой формы - Отправка при помощи Rules
- 484,875 reported installs. С 2004 года. - 18,637 reported installs. С 2011 года.
- Несколько типов полей - Работает со всеми полями
- Поля не создают отдельных таблиц - DrupalWay. 5 форм по 10 полей – 100 новых таблиц.
- Результаты хранит по-своему - Результаты - сущности
- Для своей работы создаёт новый CT - Не создаёт CT
WebForm ● Большое количество модулей, которые интегрируются с ним.
● Т.к. формы - это ноды, они наследуют все функции нод
● Нет интеграции с большим количеством модулей, поскольку не
используются сущности.
● Интеграция с Views ограничена
Интеграция
EntityForm ● Entityforms использует Entity API, что гарантирует работу с:
• Views
• Rules
• Entity Reference
• Любой модуль для полей в Drupal, в том числе: Data, File,
Geofield, Address, Media и многое другое.
● Другие инструменты для Entity будут работать с модулем
● Интеграция с Field group
● Интеграция с Conditional Fields
Интеграция
● WebForm: Если из коробки – немного магии. Или WebForm UUID, WebForm Features.
● EntityForm: Features из коробки
Переезд
Теминг
● WebForm: Если из коробки – немного магии. Или WebForm UUID.
● EntityForm: Есть машинное имя – есть теминг.
● WebForm: #2075941: порт-формы в Drupal 8
● EntityForm: Уже в Drupal 8 (eForm)
Drupal 8
Выгрузка результатов
● WebForm: Выгрузка в CSV из коробки. ● EntityForm: Выгрузка используя Views data export
● Процесс взаимодействия с Entityform должны быть гораздо более знакомым, чем писать собственный код, который интегрируется с Webform.
● Программирование для Webform является отличным способом узнать Form API. Entityform Types и Entityform submissions –можно использовать стандартные hooks, чтобы взаимодействовать с ними.
● Вспомогательные классы, такие как EntityFieldQuery и Entity Metadata Wrappers.
Программирование
WebForm ● Нужен удобный интерфейс для изменения форм ● Большое количество форм с большим количеством полей ● Устраивает стандартный функционал или есть нужный
модуль для его расширения ● У вас нет проблем с темингом и переносом ● Вы – кликер с одним инстансом ● Вы - старовер
Когда использовать?
EntityForm ● Владелец сайта умеет добавлять и редактировать Content
Types ● Не большое количество форм или уверены, что +100500
новых таблиц не создают нагрузку ● Нужны сложные и не стандартные поля ● Есть опыт разработки используя сущности
Когда использовать?
Anton Kuzmenko
Drupal developer
+7 999 466-35-47
При поддержке:
Организаторы:
Thank you!