The Entityform module enables you to create front-end forms (fieldable entities), which contain fields that you define! These forms use the standard Drupal fields. This means that out of the box, you can use any standard Drupal node field! As of the time this article was written, there were over three hundred "field" modules. And since Entityforms are "Drupal entities", you will automatically be able to use future "field" modules!
The forms can be used to create custom surveys, petition, and personalized contact forms, and other customized form. (For those of you who have used Webforms, this module brings Webform's functionality into the "standard" Drupal field / entity world.)
As with everything in Drupal, there are Pros and Cons to using Entityform. All though Entityform is a powerful tool, it is not always the best solution. The article When to Use Entityform discusses the advantages and disadvantages that Entityform may have over other methods of creating user "submittable" forms. Do not use Entityform for forms that will contain 150+ form elements
For new users the 7. x-2. x alpha versions are recommended. These versions are also recommended for current 7.x-1.x users who are NOT using built in Rules integration. The only remaining issues with them is upgrading 7.x-1.x Rules integrations to use Entity Rules.
While Webform is a great module with a huge following, it does not integrate with standard Drupal field or entity aware modules. And while Webform can be integrated into Rules and Views via additional modules, it does add complexity and overhead.
To solve these issues, the Entityform module was created. It is a survey creation tool that allows integrates with standard Drupal field and entity aware modules out of the box.
- Ability to attach any Drupal Field to the Forms
- Ability to use most field based and entity aware modules.
- You can download submitted data to XML and / or CSV data files using View Data Export.
- Rules based form submission notifications. Allows for complex notifications logic.
- Rules based form access control. Allows for complex access logic.
- Use Views to create to create an administrative listing of each Entityform type Submissions for fine grain control.