Shopping cart

Create Resource Model - Get Model Collection in Magento 2

In this topic, we will discuss about Create resource model in Magento 2. In previous topic, we have discussed about CRUD and models. As you know, the model file contain overall database logic, it do not execute sql queries. The resource model will do that. Now we will create the Resource Model for this table: Mageplaza\HelloWorld\Model\ResourceModel\Topic

Resource Model

Content for this file:

namespace Mageplaza\HelloWorld\Model\ResourceModel;
class Topic extends \Magento\Framework\Model\ResourceModel\Db\AbstractDb
	protected function _construct()
		$this->_init('mageplaza_topic', 'topic_id');

Every CRUD resource model in Magento must extends abstract class \Magento\Framework\Model\ResourceModel\Db\AbstractDb which contain the functions for fetching information from database.

Like model class, this resource model class will have required method _construct(). This method will call _init() function to define the table name and primary key for that table. In this example, we have table ‘mageplaza_topic’ and the primary key ‘topic_id’.

Resource Model Collection - Get Model Collection

The collection model is considered a resource model which allow us to filter and fetch a collection table data. The collection model will be placed in:


The content for this file:

namespace Mageplaza\HelloWorld\Model\ResourceModel\Topic;
class Collection extends \Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection
	protected function _construct()
		$this->_init('Mageplaza\HelloWorld\Model\Topic', 'Mageplaza\HelloWorld\Model\ResourceModel\Topic');

The CRUD collection class must extends from \Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection and call the _init() method to init the model, resource model in _construct() function.

Enjoyed the tutorial? Spread it to your friends!


Brian Tran
Brian Tran
Senior Magento Developer who is passionate about development and love technology

Comments for Create Resource Model - Get Model Collection in Magento 2

Please leave comments if you have any questions, feedbacks.

Module Development

We recommend:

You also may like these Magento 2 Extensions

One Step Checkout

118 reviews

Layered Navigation

61 reviews

Gift Card

7 reviews

Reward Points

8 reviews


16 reviews

Shop By Brand

19 reviews

People also searched for:

  • magento 2 create resource model
  • create resource model in magento 2