Oftentimes, we may need to export huge amounts of data from views into files so that it can be used for analysis or administration by non-technical or technical users. Instead of creating a custom module for this, we can leverage the Views Data Export module which is available with a stable release for Drupal 7, 8 and 9 versions.
The Views data export module was designed to provide a way to export the large amount of data from views. It also provides a plugin for progressive batch operations which will improve your website’s performance.
When would you need the Views Data Export Module?
You would use the Views Data Export module for Drupal 8 and Drupal 9 if you want to:
- Migrate content for different Drupal instances using migrate tools.
- Perform a feeds migration - which basically does the migration with zero coding but using migrate tools we need to have a custom module with the migration scripts according to the business logic.
- Generate reports using site data to analyse day-to-day interactions with the website.
Installing the module
It would be best to download the Views Data Export module using composer since the module has a dependency on the CSV Serialization module and other libraries. When you use composer for the installation, the dependencies will be automatically handled.
$ composer require drupal/views_data_export
Next, install the module as you would install any contributed module. Quickest way is to use the drush command line tool to install the module.
$ drush en -y views_data_export
This will install all the required dependent modules.
Let’s Set it Up
After enabling the module, in order to export the views we will first need to create the views and set up the export display with the necessary configurations. Check the detailed explanations for each step that you can follow:
1. Creation of the Views :
Create a master views display according to the requirements with the necessary fields and filters as needed. In our case, we have created the views for listing all the users in the site. Check image below for reference.
2. Creating the Export display :
After enabling the module we will get one more button to add the Data export display in the +Add attachment dropdown. Using this, add the display as data export it will create the new data export display by copying all the fields and filters from the master display.
3. Data export display configurations :
Export display has various configurations that will help in creating the data export of the views in various formats. See the below image that displays all the configurations.
4. Displaying the page with download button :
Once all the setup is done, save the view and visit the page. Now you will be able to see the download button in the footer region of the views which will download the data export with all the necessary filters if applied.
Are there any Limitations to this module?
Yes. One of them is that the Drupal 9 version does not support Excel/Xlsx format. Also, batch operations are fully supported only with MySQL databases.