Why?
Everybody knows about Webform so why would we want another survey system in Drupal? Entityforms takes a very different approach by using an entity and standard fields approach to forms. Entityform submissions are field-able entities.
This has many advantages including being able to use virtually any field module in Drupal. Now you can easily gather geographic information, reference site content and include media references in your surveys and other forms. It also allows for simple integration with popular entity-aware modules such as Views, to handle submission lists and Rules, to handle notifications and form access.
While Webform does have some integration with Views and Rules the process is not as simple as dealing with field-able entities such as Entityform submissions. With Entityforms thanks to the Entity API module, Rules and Views have complete knowledge of the submission information just as they do with the field values attached to other entities such as Nodes and Users.
Also for programmers the process of interacting with Entityforms should be much more familiar than writing custom code that integrates with Webform. As I learned through developing Webform Conditional, programming for Webform is a great way to learn the Form API but your existing knowledge of Drupal programming may not get you as far. Since Entityform Types and Entityform submissions are both entities you can use the standard hooks to interact with them. You can also use great helper classes such as the EntityFieldQuery and Entity Metadata Wrappers to make dealing with these entities much easier.
Multiplier of Effort
A great ecosystem of modules has built up around Webform through the years. This has added great functionality beyond what Webform itself offers(which is a great deal). One problem with this situation is that all of these modules only benefit those who are using Webform. My aim in development of Entityforms is to keep the main module as lean as possible. When there seems a need for added functionality the solution will most likely be an existing or new contributed module. For instance Entityforms currently doesn't have a robust results analysis system. Instead of adding this functionality directly to Entityforms the Field Analytics module was created(thanks to Scott Rigby for his work on this). This way this results analysis will be able to be used on any field-able entity. The need for results in Entityforms then provides benefit beyond Entityforms.
Webform Lives On
Obviously with over 250,000 installs Webform is a useful, reliable, and proven module. The ease of creating new forms in Webform(especially with Form Builder) is currently not matched in Entityforms. In the case that your clients will need to create forms on an going basis Webform seems to be the only game in town(depending on how tech savvy your client is). Also because of the way fields are stored in the database in Drupal, Webform will be able to handle forms with a larger number of questions.
A short video introduction:
Visit Entityforms Project page to download and try it out.

Comments
Great post
I am new to drupal, and just getting into intermediate level and dabbling deeper into the system, and loving this great platform (Jeeze, why would any serious developers consider wordpress as a better alternative? )
Anyways, am learning to make choices between different ways of building great sites:
panels versus boxes/context
all about the awesome views
My initial peek a webforms told me I needed to 'concentrate' (LOL) and it could take some getting into .. Now, I stumble across your site and this video .. Entity forms seem like a much less 'codie' way of doing forms, and I will certainly be spending plenty of time trying to fully understand it.
Any suggestions on how best to approach learning it enough, s I can eventually get to extend it ways that suit particular needs?
By the way, openfolio rocks as a learning tool .. Big up, for releasing this to the community.
Thanks for feedback
goondaba,
Glad you find these useful. Some people have written a few pages of documentation on Entityforms. I would suggest checking those out first.
http://drupal.org/node/1432894
Ted
Multilangual
Hi Ted,
great module, I was never feeling well when using Webform because it is so different from teh default Drupal way of living.
I have one important question for you: what about multilangual options for Entity Forms?
The "Form override save" button text is now not translatable...
I was looking at Entity Translation, but that doesn't solve my problem.
Thanks
Multilingual
Max,
Glad you like it. Check out this issue http://drupal.org/node/1689854
Thanks
Very useful!!
Large form above 200 fields /
By reading this article I am convinced that I must use Webforms for over 200 fields I stand to be corrected.
Can someone confirm?
Probably that would be best.
Probably that would be best.
It is really a question of how many fields can be attached to bundle of fieldable entity type. The problem is not limited to just EntityForms but Nodes, Users, Terms and any fieldable entity.
If you were to trying to search to find an answer to this quesiton I would reccomend searching for a limit of how many fields you can attach to a content type(nodes). You will probably find a more discussion about this than about entityforms though the answer should apply to both.
I have not found a definitive answer as to the number fields.
Add new comment