Liferay have provided the way to create new data definition so that we can easily create new data list and we can use it store data. Dynamic data list way of design our data model and store that data as for our desired models.

We will define our data definition and we can create different data list based on the definition then we can store the data as for defined model. Data List are associated with sites.

Liferay have given very good user Interface to create new definitions and we can display these definition list to capture data from end users.

These we can use in real time requirement like To Do List, Contact US, Feedback and Meeting Minutes.

Data Definition:

Data Definition are data model like data structure

Data List:

Data List is use the data definition and it will be separate unit the data stored is associate with data list.

These are steps to use Liferay Dynamic Data List.

Define Data List Definition
Create Data List based on Definition
Display List to capture data from End User.

Liferay have provided few data definitions.

Using Existed Dynamic Data Definitions.

Liferay have provide following definition. Using Existed Definition to create Data List

Login as Portal Administrator Now go to Site Administration and then select content in the site administration. Once click on Content then it will launch Administration Dash board there you can find Dynamic Data List. Click on that so that it will launch dynamic data list user interface screens. Now we will create new Data List so click on Add button then it will launch Create new data List screen. Once click on Add it will launch screen will ask details to create new data list. Assume we are going to create Contact Us Data list. Give following input data.

Name: Product Contact Us
Description:  Product Contact Us To create new data list we need to select relevant Data Definition so click on Data Definition select button it will show available definitions. In the list select Contact Us data definition in the list. Now you can see selected Contact us Definition Finally click on save then then new data list will be created and it will use the contact us definition. We ready with new data list and now we can use this list to capture the data.

Create one new page. Go to home page. Left site you can see the Admin controls there click on Add Click on page tab then give page name and select layout for page then click on Add page then page will be created. Go to newly created page now we have to add the Dynamic Data List Display Portlet to page.
Go to Add Application and select Dynamic Data List Display Portlet then click on add portlet then it will be added to the page. You can see Select List and Add List controls to portlet boron now click on Select List link Once click on Select List it will display list of dynamic list and select desired list then save it finally close the popup and list will be associated with the portlet. Select Product Contact Us list click on save then Dynamic Data List will be associated to the portlet. Once click on Add button then Data List will be displayed in the page. Fill the form then click on publish data will be stored and you can see the data in the portlet.
[null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://1.bp.blogspot.com/-lmfSBDalUg0/VexGFxtoLfI/AAAAAAAAJG0/0kqroI0IfGI/s640/1.PNG", "src": "http://1.bp.blogspot.com/-lmfSBDalUg0/VexGFxtoLfI/AAAAAAAAJG0/0kqroI0IfGI/s640/1.PNG", "rendered_width": 640, "rendered_height": 320}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://2.bp.blogspot.com/-XZMn7wQDOXI/VexGM12e8zI/AAAAAAAAJG8/Hm_c8vWEr18/s640/2.PNG", "src": "http://2.bp.blogspot.com/-XZMn7wQDOXI/VexGM12e8zI/AAAAAAAAJG8/Hm_c8vWEr18/s640/2.PNG", "rendered_width": 640, "rendered_height": 294}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://3.bp.blogspot.com/-AYj42yxhHWk/VexGQeEiTrI/AAAAAAAAJHE/fFsiUtzWXik/s640/3.PNG", "src": "http://3.bp.blogspot.com/-AYj42yxhHWk/VexGQeEiTrI/AAAAAAAAJHE/fFsiUtzWXik/s640/3.PNG", "rendered_width": 640, "rendered_height": 268}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-lpeCPyCXDqE/VexGY_8yJpI/AAAAAAAAJHM/x-OyQn_wL3Y/s640/4.PNG", "src": "http://4.bp.blogspot.com/-lpeCPyCXDqE/VexGY_8yJpI/AAAAAAAAJHM/x-OyQn_wL3Y/s640/4.PNG", "rendered_width": 640, "rendered_height": 258}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://2.bp.blogspot.com/-Ech9PBqfv5U/VexHpxHsXXI/AAAAAAAAJHY/hPiuUQRo-ag/s640/5.PNG", "src": "http://2.bp.blogspot.com/-Ech9PBqfv5U/VexHpxHsXXI/AAAAAAAAJHY/hPiuUQRo-ag/s640/5.PNG", "rendered_width": 640, "rendered_height": 260}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-GPLXgrfJQZ4/VexHt1h4sBI/AAAAAAAAJHg/rVamcbuqhMc/s640/6.PNG", "src": "http://4.bp.blogspot.com/-GPLXgrfJQZ4/VexHt1h4sBI/AAAAAAAAJHg/rVamcbuqhMc/s640/6.PNG", "rendered_width": 640, "rendered_height": 254}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://1.bp.blogspot.com/-EHT7sG2AicA/VexHyuF8jhI/AAAAAAAAJHo/nHAt1xZmm88/s640/9.PNG", "src": "http://1.bp.blogspot.com/-EHT7sG2AicA/VexHyuF8jhI/AAAAAAAAJHo/nHAt1xZmm88/s640/9.PNG", "rendered_width": 640, "rendered_height": 256}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://1.bp.blogspot.com/-AZRedAeEdkU/VexIfx6oS-I/AAAAAAAAJIE/FOqRgPzweMI/s640/8.PNG", "src": "http://1.bp.blogspot.com/-AZRedAeEdkU/VexIfx6oS-I/AAAAAAAAJIE/FOqRgPzweMI/s640/8.PNG", "rendered_width": 640, "rendered_height": 260}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://2.bp.blogspot.com/-H47A3IQ53wg/VexInT-KunI/AAAAAAAAJIM/XG1-cV4_7W8/s640/9.PNG", "src": "http://2.bp.blogspot.com/-H47A3IQ53wg/VexInT-KunI/AAAAAAAAJIM/XG1-cV4_7W8/s640/9.PNG", "rendered_width": 640, "rendered_height": 256}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://1.bp.blogspot.com/-LzgVVllDMvE/VexIwxDxxeI/AAAAAAAAJIU/nXnqWNMRjGU/s640/10.PNG", "src": "http://1.bp.blogspot.com/-LzgVVllDMvE/VexIwxDxxeI/AAAAAAAAJIU/nXnqWNMRjGU/s640/10.PNG", "rendered_width": 640, "rendered_height": 264}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-6XKzdWZJOXM/VexI1DZmmsI/AAAAAAAAJIc/AElqvB7JvSw/s640/11.png", "src": "http://4.bp.blogspot.com/-6XKzdWZJOXM/VexI1DZmmsI/AAAAAAAAJIc/AElqvB7JvSw/s640/11.png", "rendered_width": 640, "rendered_height": 330}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-Vs2PK8ZDQPY/VexI4nXVSnI/AAAAAAAAJIk/VvlBo87oFFM/s640/12.PNG", "src": "http://4.bp.blogspot.com/-Vs2PK8ZDQPY/VexI4nXVSnI/AAAAAAAAJIk/VvlBo87oFFM/s640/12.PNG", "rendered_width": 640, "rendered_height": 254}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://3.bp.blogspot.com/-MorKG6MU4nQ/VexI9u7S5yI/AAAAAAAAJIs/uPB2NjfdnPw/s640/13.PNG", "src": "http://3.bp.blogspot.com/-MorKG6MU4nQ/VexI9u7S5yI/AAAAAAAAJIs/uPB2NjfdnPw/s640/13.PNG", "rendered_width": 640, "rendered_height": 256}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://3.bp.blogspot.com/-2FrL6VR_xX0/VexJJdRzikI/AAAAAAAAJI0/NuNUOcbBN6c/s640/14.PNG", "src": "http://3.bp.blogspot.com/-2FrL6VR_xX0/VexJJdRzikI/AAAAAAAAJI0/NuNUOcbBN6c/s640/14.PNG", "rendered_width": 640, "rendered_height": 262}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-rO42C8r_VKQ/VexJNek-WpI/AAAAAAAAJI8/EgOiiGWfDsA/s640/15.PNG", "src": "http://4.bp.blogspot.com/-rO42C8r_VKQ/VexJNek-WpI/AAAAAAAAJI8/EgOiiGWfDsA/s640/15.PNG", "rendered_width": 640, "rendered_height": 258}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-7l39-IrEdh8/VexJS4PaN5I/AAAAAAAAJJE/2qa2y-cM0ww/s640/16.PNG", "src": "http://4.bp.blogspot.com/-7l39-IrEdh8/VexJS4PaN5I/AAAAAAAAJJE/2qa2y-cM0ww/s640/16.PNG", "rendered_width": 640, "rendered_height": 324}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://2.bp.blogspot.com/-UuNho2cc2lM/VexJWnDejTI/AAAAAAAAJJM/kBKhEOY8JRw/s640/17.PNG", "src": "http://2.bp.blogspot.com/-UuNho2cc2lM/VexJWnDejTI/AAAAAAAAJJM/kBKhEOY8JRw/s640/17.PNG", "rendered_width": 640, "rendered_height": 270}, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "http://4.bp.blogspot.com/-7TxC6GfE3Yo/VJEqBUjqRUI/AAAAAAAAIXg/4XbtDJ3Ys2w/s1600/Certified-Pro-Dev-LP-6.2-Horizontal.png", "src": "http://4.bp.blogspot.com/-7TxC6GfE3Yo/VJEqBUjqRUI/AAAAAAAAIXg/4XbtDJ3Ys2w/s1600/Certified-Pro-Dev-LP-6.2-Horizontal.png", "formatted_filename": "Certified Pro Dev LP", "rendered_width": 200, "rendered_height": 71}, null, null, null, null, null, {"document_url": "http://www.liferaysavvy.com/2015/09/working-with-dynamic-data-lists-in.html", "unformatted_src": "//lh4.googleusercontent.com/-q06zTooeh10/AAAAAAAAAAI/AAAAAAAAN04/V7gdj1l-cUg/s80-c/photo.jpg", "src": "http://lh4.googleusercontent.com/-q06zTooeh10/AAAAAAAAAAI/AAAAAAAAN04/V7gdj1l-cUg/s80-c/photo.jpg", "formatted_filename": "photo", "alt_text": "My Photo", "rendered_width": 80, "rendered_height": 80}, null, null, null, null, null, null, null, null, null, null, null, null, null]